Tag: entity framework 4.1

entity framework数据库中的代码优先默认数据

如何在应用程序启动之前或生成数据库之后处理需要预先存在的数据的情况。 例如,我有一个我想在代码优先生成之后加载到数据库中的国家列表。 我该怎么做呢? 应用程序的结构如下: Repository > Service > WebMVC xml在WebMVC项目中。

DbSet.Create与新实体()的分支

我对是否使用DbSet.Create有点困惑,或者只是简单地添加一个实体并添加它。 我真的不明白使用DbSet.Create的后果。 我知道DbSet.Create将创build一个代理版本(如果适用的话),但我不明白这意味着什么。 为什么我在乎 在我看来,一个空的Proxied类没有比非代理类更有用,因为没有相关的实体来延迟加载。 你能告诉我,除了明显的差异吗? 你为什么要关心?

EF代码优先:如何获得随机行

我怎样才能build立一个查询,我会检索随机行? 如果我在SQL中编写它,那么我将在newid()上放置一个命令,并从顶部砍掉n个行。 无论如何要在EF代码中做到这一点? 我已经尝试创build一个使用newid()并使用DbSet.SqlQuery()执行它的查询。 虽然它的工作,它不是最干净的解决scheme。 另外,试着检索所有的行,并通过一个新的GUIDsorting。 尽pipe行数相当小,但它仍然不是一个好的解决scheme。 有任何想法吗?

entity framework代码 – 第一个空外键

我有一个User < Country模式。 用户属于一个国家,但可能不属于任何(空外键)。 我如何设置? 当我尝试插入一个空国家的用户,它告诉我,它不能为空。 模型如下: public class User{ public int CountryId { get; set; } public Country Country { get; set; } } public class Country{ public List<User> Users {get; set;} public int CountryId {get; set;} } 错误: A foreign key value cannot be inserted because a corresponding primary key value does not […]

如何声明外键关系在MVC3中使用代码第一entity framework(4.1)?

我一直在寻找关于如何使用代码第一个EF 4.1来声明外键关系和其他约束的资源,但没有多less好运。 基本上我在代码中构build数据模型,并使用MVC3来查询该模型。 一切工作通过MVC这是伟大的(微软的荣誉!),但现在我希望它不工作,因为我需要有数据模型的约束。 例如,我有一个Order对象,它有很多属性是外部对象(表)。 现在我可以创build一个订单没有问题,但无法添加外键或外部对象。 MVC3设置这个没有问题。 我意识到我可以在保存之前在控制器类中自己添加对象,但是如果约束关系未被满足,我希望调用DbContext.SaveChanges()失败。 新的信息 所以,具体而言,我想要在不指定客户对象的情况下保存Order对象时发生exception。 这似乎不是行为,如果我编写的大多数Code First EF文档中描述的对象。 最新的代码: public class Order { public int Id { get; set; } [ForeignKey( "Parent" )] public Patient Patient { get; set; } [ForeignKey("CertificationPeriod")] public CertificationPeriod CertificationPeriod { get; set; } [ForeignKey("Agency")] public Agency Agency { get; set; } [ForeignKey("Diagnosis")] public Diagnosis PrimaryDiagnosis […]

StringLength与MaxLength属性entity frameworkEF Code First的ASP.NET MVC

[MaxLength]和[StringLength]属性的行为有什么不同? 据我所知(除了[MaxLength]可以validation数组的最大长度)这些是相同的,有点多余?

如何将parameter passing给DbContext.Database.ExecuteSqlCommand方法?

假设我有一个在Entity Framework中直接执行sql命令的有效需求。 我无法弄清楚如何在我的sql语句中使用参数。 下面的例子(不是我真正的例子)不起作用。 var firstName = "John"; var id = 12; var sql = @"Update [User] SET FirstName = @FirstName WHERE Id = @Id"; ctx.Database.ExecuteSqlCommand(sql, firstName, id); ExecuteSqlCommand方法不允许你像ADO.Net那样传入命名参数,这个方法的文档没有提供任何有关如何执行参数化查询的例子。 如何正确指定参数?

从DbValidationException中获取确切的错误types

我有这种情况,我正在初始化我的模型在DatabaseInitializer()EF 4.1,并得到这个恼人的错误"Validation failed for one or more entities. See 'EntityValidationErrors' property for more details." 所以,我去了这个EntityValidationErrors,并有一个字段{System.Data.Entity.Validation.DbEntityValidationResult}它根本没有给我任何信息,关于什么领域,它无法初始化。 有没有办法获得有关此错误的更多信息? 清除事情: 我知道如何解决string长度问题。 我在问什么是如何得到打破模型的确切字段名称。

在“entity framework4.1代码优先”中忽略类属性

我的理解是[NotMapped]属性不可用,直到目前在CTP中的EF 5,所以我们不能在生产中使用它。 我如何标记EF 4.1中的属性被忽略? 更新:我注意到别的奇怪。 我得到了[NotMapped]属性,但由于某种原因,EF 4.1仍然在数据库中创build一个名为Disposed的列,即使public bool Disposed { get; private set; } public bool Disposed { get; private set; } public bool Disposed { get; private set; }用[NotMapped]标记。 当然,这个类实现了IDisposeable ,但我不明白这应该如何。 有什么想法吗?

如何在entity framework中包含子对象的子对象5

我Entity Framework 5 code first使用Entity Framework 5 code first和ASP.NET MVC 3 。 我正在努力获取一个子对象的子对象来填充。 以下是我的课程.. 应用程序类; public class Application { // Partial list of properties public virtual ICollection<Child> Children { get; set; } } 儿童class: public class Child { // Partial list of properties public int ChildRelationshipTypeId { get; set; } public virtual ChildRelationshipType ChildRelationshipType { […]