这是我的3个实体模型:路线,位置和位置路线。 下面的方法失败,提交时得到exception: public static Route InsertRouteIfNotExists(Guid companyId, IListLocation> locations) { //Loop on locations and insert it without commit InsertLocations(companyId, routesOrLocations); RouteRepository routeRep = new RouteRepository(); Route route = routeRep.FindRoute(companyId, locations); if (route == null) { route = new Route() { CompanyId = companyId, IsDeleted = false }; routeRep.Insert(route); LocationInRouteRepository locInRouteRep = new LocationInRouteRepository(); for (int […]
有没有办法使用代码优先在属性/列上创build索引,而不是使用新的IndexAttribute ?
entity framework上下文对象实现了“释放对象上下文使用的资源”的Dispose()方法。 它究竟做了什么? 总是把它放到一个using {}语句中是不是一件坏事? 我已经看到使用和不使用using语句。 我特别要从WCF服务方法中使用EF上下文,创build上下文,执行一些linq并返回答案。 编辑:似乎我不是唯一一个想知道这个。 另一个问题是Dispose()方法中真正发生了什么。 有人说它closures连接,有些文章说不。 这是怎么回事?
我有一个Item 。 Item有一个Category 。 Category有ID , Name , Parent和Children 。 Parent和Children也属于Category 。 当我做一个特定Item的LINQ to Entities查询时,它不会返回相关的Category ,除非我使用Include("Category")方法。 但是它并没有把它的全部范畴与它的父母和孩子带到一起。 我可以做Include("Category.Parent") ,但是这个对象就像一棵树,我有一个recursion的层次结构,我不知道它在哪里结束。 我怎样才能使EF完全加载Category ,与父母和子女,父母与父母和子女,等等? 这不是整个应用程序的事情,考虑到性能方面的考虑,只需要这个特定的实体,类别。
我刚开始学习POCO,但不明白它的用途和优势。 即使下面的链接的stackoverflow没有帮助我。 什么是entity framework与POCO 有人可以用一个简单的例子来解释POCO的用法吗?
我正在决定一个大项目的ORM,并决定采用ADO.NETentity framework,尤其是在.NET 4中提供的新版本。在我searchEF的信息期间,我偶然发现了ADO .NET Entity Framework Vote没有信心 ,我不知道如何采取。 不信任投票是在2008年某个时候写的,目的是说服微软倾听EF v1的具体批评意见。 目前尚不清楚“不信任表决”中的声明是否仍然有效(在.NET 4中),以及是否足够认真地使用其他解决scheme。 NHibernate是一个成熟的select,但我不知道它带来了什么问题。 我通常更倾向于Ms解决scheme,主要是因为我可以指望与VS集成和开发人员的支持。 如果不信任投票中提到的问题如何影响现实世界的项目,我将不胜感激。 更重要的是,在.NET 4中,这些声明还是与EF相关吗?
这可能是我花了好几个小时解决了很长时间的最大浪费。 var db = new hublisherEntities(); establishment_brands est = new establishment_brands(); est.brand_id = 1; est.establishment_id = 1; est.price = collection["price"]; est.size = collection["size"]; db.establishment_brands.Add(est); db.SaveChanges(); 这给了我一个错误 值不能为空。 参数名称:来源 堆栈跟踪 [ArgumentNullException:值不能为空。 参数名称:source] System.Linq.Enumerable.Any(IEnumerable 1 source, Func 2谓词)+4083335 System.Data.Entity.Internal.InternalContext.WrapUpdateException(UpdateException updateException)+87 System.Data.Entity.Internal.InternalContext.SaveChanges()+193 System.Data.Entity.Internal.LazyInternalContext.SaveChanges()+33 System.Data.Entity.DbContext.SaveChanges()+20 … … 我只是想添加一个实体到表中。 ORM是EF。
有没有办法find在entity framework中是否存在未保存的更改?
我正在创build一个POCO模型,首先使用实体框架代码CTP5。 我正在使用装饰来制作属性映射到PK列。 但是我怎样才能在一列以上定义一个PK,具体来说,我怎样才能控制索引中列的顺序? 这是课堂教学秩序的结果吗? 谢谢!
数据库已成功创build(与表一样),但不会播种。 我花了好几个小时,读了大量的文章,但一直没有得到它。 有什么build议么? 在附注中,是否可以调用初始化程序,而不必在客户端中引用我的DatabaseContext? 我已经包含了所有我能想到的相关代码。 如果有其他事情会有所帮助,请让我知道。 我试过的东西: 我删除了我的连接string(因为它默认为sqlexpress,只是名称改变了) 我将DropCreateDatabaseIfModelChanges更改为DropCreateDatabaseAlways,仍然相同。 编辑:真奇怪的事情是一次,但我不知道如何或为什么它再次打破。 我假设连接string,但谁知道。 DatabaseInitializer.cs public class DatabaseInitializer : DropCreateDatabaseIfModelChanges<DatabaseContext> { protected override void Seed(DatabaseContext context) { // Seeding data here context.SaveChanges(); } } DatabaseContext.cs public class DatabaseContext : DbContext { protected override void OnModelCreating(DbModelBuilder mb) { // Random mapping code } public DbSet<Entity1> Entities1 { get; set; […]