ef-code-first相关内容

实体框架:导航属性问题

我正与实体框架code-第一,我有一个类课程其中有一个导航属性​​学生: public虚拟集合<学生>学生{获得;组;} 它的工作不错,但我访问该导航属性,所有的数据从数据库中检索: VAR allStudents = course.Students; //这检索数据 VAR activeStudents = allStudents.Where(N => n.Ac ..
发布时间:2015-11-24 21:55:18 C#/.NET

如何在EF-code-先指定主键名

我使用实体框架codefirst的创建数据库。用模式名dbo.pk_Jobs默认的主键似乎打乱Access 2007年,当我连接到它通过ODBC。如果我手动编辑名称,并删除架构名称,并重新命名该主键pk_jobs,Access现在可以读取表。 我可以指定主键名不包含的架构的使用流利的API,数据属性或任何其他方法的名称。 公共类ReportsContext:的DbContext { 公 ..
发布时间:2015-11-24 21:53:37 C#/.NET

如何保存子实体中的EntityFramework 4?

我的订单和联系之间的1-1的关系。即Contact.OrderId引用订单,也是一个PK。 所以,我有一个现有订单,并添加新的联系人,以它像这样... order.Contact =新联系(){EmailAddress的=“你好”}; context.Orders.Attach(订单); context.SaveChanges(); 一个参照完整性约束冲突发生 ..
发布时间:2015-11-24 21:33:24 C#/.NET

单向一比一的关系在实体框架

下面实施例的一对一关系而引发异常 公共类用户 { 公众诠释编号{获得;组; } 公共广播地址{获得;组; } } 公共类地址 { 公众诠释编号{获得;组; } 公众用户用户{获得;组; } } 异常说: 无法确定之间的关联的主要结束 类型“ConsoleApplication1.Address'和'ConsoleApplication1. ..
发布时间:2015-11-24 21:11:04 C#/.NET

如何禁用级联删除在EF code-一个链接表?

我想禁用级联删除与实体框架code-第一链接表。例如,如果许多用户有很多角色,我尝试删除一个角色,我想这删除被阻止的除非的当前没有与该角色相关联的用户。我已经删除了级联删除约定在我的 OnModelCreating : 保护覆盖无效OnModelCreating(DbModelBuilder模型构建器){ ... modelBuilder.Conventions.Remove&其 ..
发布时间:2015-11-24 21:04:23 C#/.NET

EF code先删除批次的IQueryable< T>?

我知道这是可能的LINQ到SQL和我见过的点点滴滴,导致我相信这是可能的EF。是否有一个扩展,有可以做这样的事情: VAR peopleQuery = Context.People.Where(P => p.Name ==“吉姆”); peopleQuery.DeleteBatch(); 其中, DeleteBatch 刚拿起拆开peopleQuery并创建一个SQL语句删除所 ..
发布时间:2015-11-24 20:17:17 C#/.NET

继承和组合外键 - 在基类中的关键的一部分,在派生类中的另一部分

我有问题要建立一个实体框架code-首先映射下面的示例数据库模式(在SQL Server): 每个表中包含 TenantId 这是所有(复合材料)的一部分的主键和外键(多租户)。 A 公司或者是一个客户或公司我尝试通过表,每类模型这个(TPT)继承映射: 公共抽象类公司 { 公众诠释TenantId {获得;组; } 公众诠释CompanyId {获得;组; } 公众诠释AddressId ..

如何走出超范围转换错误使用的DbContext和SetInitializer修复DATETIME2?

我使用的是与实体框架4.1推出的DbContext和code首先的API。 在数据模型使用基本数据类型,如字符串和的DateTime 。我使用的是在某些情况下,唯一的数据注解是 [必需] ,但这不是任何的的DateTime 属性。例如: public虚拟日期时间启动{获得;组; } 在的DbContext子类也很简单,看起来像: 公共类EventsContext:的DbContex ..
发布时间:2015-11-24 16:24:12 C#/.NET

先用的DbContext型号,无法初始化新的数据库

我放弃了。 我发现这一点: 但现在我的模型没有创造新的数据库(或增加tabls现有的一个)。 我得到这个错误: 使用的数据库优先和模型优先发展的T4模板,如果正确使用code优先模式可能无法正常工作 code产生的。要继续使用数据库优先或模型首先确保在执行应用程序的配置文件中指定的实体框架的连接字符串。要使用这些类,从数据库中第一或模型首先生成的,以code首先使用属性或DbModelBui ..

实体框架:重复的记录中的许多一对多的关系

我有以下实体框架code首先code。创建表和数据插入。然而,有在俱乐部表中重复的记录。 我的操作是: - 创建使用俱乐部创建的应用程序会 创建一个使用个人应用程序的人 如何避免重复条目? 静态无效的主要(字串[] args) { Database.SetInitializer&其中; NerdDinners>(新MyInitializer()); ..
发布时间:2015-11-24 15:42:12 C#/.NET

在实体框架4.1外键

我工作的实体框架4.1,并使用数据注释外键。我想知道我们如何能够定义一个产品和类别之间一对多的关系。我要地图类别。的categoryId与product.cid 公共类目录 { 公共字符串的CategoryId {获得;组; } 公共字符串名称{;组; } 公共虚拟的ICollection<产品>产品{获得;组; } } 公共类产品 { 公众诠释的 ..
发布时间:2015-11-24 14:57:16 C#/.NET

如何在每个层次结构(TPH)映射表共享公共列名

我使用实体框架4 CTP5 code第一个方法,我有每个层次结构(TPH)映射表。在常见的一些我的班级层次结构中的有属性。 公共类基本类型 { 公众诠释编号{获得;组; } } 大众A级:基本类型 { 公共字符串客户{获得;组; } 公共字符串订单{获得;组; } } 大众B级:基本类型 { 公共字符串客户{获得;组; } 公共字符串第{获得;组; } ..
发布时间:2015-11-24 14:54:42 C#/.NET

EF模型优先或code第一种方法?

我知道这个问题已经被问过无数遍了,因为我已经阅读有关的利弊等话题相当多的职位,但我现在还不能确定哪种方法更适合我。我很新的网页编程和来自SQL数据库管理员/报告写作背景。我决定尝试建立自己的网站,这可能最终不得不在未来的30 -40表,也许更多。 我看这两种方法,我这样做有利于实体模型的方法,只是因为我喜欢设计简单,我喜欢看到整个模型在我面前,它显示了在一个快照大局。另外,我不是一个强大的程序员 ..

使用实体框架(code第一)的生产迁移

我只是在寻找到使用EF迁移对我们的项目,特别是用于执行架构更改生产版本之间。 我见过提到,有一个API来执行这些迁移在运行时使用 DbMigration 类,但我找不到任何具体的例子。 在理想情况下,我希望有一个 DbMigration 文件每个数据库的变化,以及这些变化要在应用程序自动应用从当前版本的启动到最新版本 解决方案 有一个数据库初始化程序,你可以用它来实现迁移到最新的版本在启动 ..
发布时间:2015-11-24 14:11:21 C#/.NET

EF code首先 - 如何设置标识种子?

我有一个实体类 公共类员工 { 众长ID为{获得;组; } 公共字符串名称{;组; } } 我已经设置了标识字段与自动编号生成主键 modelBuilder.Entity<员工>()HasKey(E => e.Id); modelBuilder.Entity<员工>()房产(E => e.Id)。.HasDatabaseGenera ..
发布时间:2015-11-24 14:09:34 C#/.NET

获取准确的错误从DbValidationException输入

我在哪里,我初始化我在DatabaseInitializer模型()用于EF 4.1的情况,并得到这恼人的错误“验证失败的一个或多个实体。请参阅”EntityValidationErrors“属性的更多细节。 “所以,我去这个EntityValidationErrors,有一个字段 {System.Data.Entity.Validation.DbEntityValidationResult} 这 ..
发布时间:2015-11-24 13:57:31 C#/.NET