草庐IT

列优先

全部标签

c# - Entity Framework 6 代码优先触发器

我正在使用EntityFramework6CodeFirst,并想创建一个触发器。我该怎么做?我需要触发器的原因是因为用户可以直接编辑数据库或通过我正在编写的程序编辑数据库,我需要确保表中的2列既不为空,也不为空.我一直在寻找,找不到方法。有没有办法先使用代码指定触发器? 最佳答案 EntityFramework不支持触发器,尽管您当然可以手动执行创建触发器的语句,但您需要在创建表后执行此操作(如果使用迁移)。您可以使用Ladislav在EF4.1code-firstaddingatriggertoatable中指定的技术注意他的警

c# - 在代码优先环境中从包管理器控制台更新数据库

代码优先环境我正在尝试从包管理器控制台更新数据库。如果我的域类发生更改,我必须删除并创建数据库,而不是删除数据库我该如何更新数据库。我已经尝试通过阅读谷歌的一些博客。命令PM>Install-PackageEntityFramework通过使用此命令,我成功安装了EntityFramework。PM>Enable-Migrations通过使用此命令,它在我的项目中创建了迁移文件。PM>Update-Database通过使用这个命令,我可以更新表格,但我有一个问题。错误Specifythe'-Verbose'flagtoviewtheSQLstatementsbeingappliedto

c# - Entity Framework 代码优先 - 定义此 EntityType 的键

您好,我计划在我的一个项目中测试EFCodeFirst。这就是我想要的。我有三个表,结构如下publicpartialclassApp_user{publicintid{get;set;}publicstringname{get;set;}publicstringemail_address{get;set;}publicstringpassword{get;set;}publicintuser_type{get;set;}publicListRoles{get;set;}}publicpartialclassRole{publicintid{get;set;}publicstringn

c# - 枚举 EF 5.0 - 数据库优先

如果我使用数据库优先,我如何才能让我的上下文对象使用EntityFramework5.0中的枚举功能。 最佳答案 转到模型浏览器并创建一个新的枚举类型,然后转到您希望使用它的任何列并将其类型更改为您刚刚创建的枚举。 关于c#-枚举EF5.0-数据库优先,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/11595008/

c# - .NET 4.0 中的并发优先级队列

似乎.NET4.0中有很多与并发性相关的改进可能依赖于并发优先级队列。框架内是否有适合重用的优先级队列实现? 最佳答案 在msdn上有一个实现作为“使用.NETFramework进行并行编程的示例”的一部分。参见ParallelExtensionsExtras.直接链接到文件的源代码ConcurrentPriorityQueue.cs 关于c#-.NET4.0中的并发优先级队列,我们在StackOverflow上找到一个类似的问题: https://stack

c# - Entity Framework 代码优先延迟加载

我有两个对象类publicclassUser{publicGuidId{get;set;}publicstringName{get;set;}//NavigationpublicICollectionProducts{get;set;}}publicclassProduct{publicGuidId{get;set;}//NavigationpublicUserUser{get;set;}publicGuidUser_Id{get;set;}publicstringName{get;set;}}当我使用dataContext加载用户时,我得到的产品列表为空(这没问题)。如果我在产品列表

c# - 代码优先迁移 : How to set default value for new property?

我正在使用EF6在我的数据库中存储report类的实例。数据库已包含数据。假设我想向report添加一个属性,publicclassreport{//...somepreviousproperties//...newproperty:publicstringnewProperty{get;set;}}现在,如果我转到包管理器控制台并执行add-migrationReport-added-newPropertyupdate-database我将在“/Migrations”文件夹中获取一个文件,将newProperty列添加到表中。这很好用。但是,在数据库中的旧条目上,newPropert

c# - 数据库优先方法的 EF 迁移?

我们在EntityFramework中使用数据库优先方法。我们有几个客户,当我们部署新产品版本时,我们现在使用SQLCompare等工具“手动”应用数据库架构更改。EF迁移是否可以帮助自动将更改应用到客户数据库? 最佳答案 据我所知,EFMigrations是一款针对CodeFirst的产品,不支持DatabaseFirst操作。CodeFirst假定您永远不会手动对数据库进行任何更改。对数据库的所有更改都将通过代码优先迁移。 关于c#-数据库优先方法的EF迁移?,我们在StackOve

c# - Entity Framework - 迁移 - 代码优先 - 每次迁移播种

我正在研究迁移,以努力清理我们的部署流程。将变更推向生产时所需的人工干预越少越好。我在迁移系统中遇到了3个主要障碍。如果我想不出一个干净的方法来绕过它们,它们就会成为阻碍。1。如何为每次迁移添加种子数据:我执行命令“add-migration”,它使用Up和Down函数构建一个新的迁移文件。现在,我想通过Up和Down更改自动更改数据。我不想将种子数据添加到Configuration.Seed方法,因为它会运行所有以各种重复问题结束的迁移。2。如果以上不可能,我该如何避免重复?我有一个枚举,我循环通过它来将值添加到数据库中。foreach(varenumValueinEnum.GetV

c# - 自引用多对多递归关系代码优先 Entity Framework

我似乎根本做不到这一点classMember{publicvirtualIListFriends{get;set;}[Key]publicintMemberId{get;set;}publicstringName{get;set;}}我尝试添加映射但没有成功。有没有办法用CTP5做到这一点? 最佳答案 按照惯例,CodeFirst将单向关联视为一对多。因此,您需要使用流畅的API让CodeFirst知道您想要多对多自引用关联:protectedoverridevoidOnModelCreating(ModelBuildermodel