asp.net - EF4 : AutoDetectChangesEnabled not found

标签 asp.net entity-framework entity-framework-4

我的处境很奇怪。我阅读了 context.Configuration.AutoDetectChangesEnabled = false; 并决定使用它。 但我找不到它。代码是

using (DefaultCS db = new DefaultCS())
        {
            db.Configuration.AutoDetectChangesEnabled = false;
            order.OrderTables = TableNo;
            order.OrderMenus = oMenu;
            db.Orders.AddObject(order);
            db.SaveChanges();
        }

我在 db.Configuration 处遇到错误,即 ROS.DefaultCS 不包含“Configuration”的定义,并且没有扩展方法“Configuration”接受类型为“ROS”的第一个参数。可以找到 DefaultCS'(您是否缺少 using 指令或程序集引用?)

我错过了什么? 我正在使用 EF4。

最佳答案

答案如下:在 Entity Framework 4 中,我们应该使用 db.Orders.MergeOption = MergeOption.NoTracking; 而不是 db.Configuration.AutoDetectChangesEnabled = false;仅适用于 Entity Framework 5。

EF4 和 EF5 的代码

在 EF4 中

db.Orders.MergeOption = MergeOption.NoTracking;

在 EF5 中

db.Configuration.AutoDetectChangesEnabled = false;

EF4的降级是为每个Entity设置。

关于asp.net - EF4 : AutoDetectChangesEnabled not found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20495528/

相关文章:

c# - ASP.NET MVC - 附加类型为 'MODELNAME' 的实体失败,因为相同类型的另一个实体已经具有相同的主键值

asp.net - 有什么方法可以通过查询字符串传递包含 '+' 的字符串

c# - 将数据 View 排序为数据表

c# - 数据类型从int转换为string时发生错误

entity-framework - EF4 和使用 AddObject 意外加载相关集合

c# - self 跟踪pocos,如何判断属性是否已更改?

asp.net-mvc - Entity Framework 代码优先多对多 NullReference

asp.net - 如何在 asp.net Web 窗体上实现 Ninject 或 DI?

c# - Entity Framework 4 加载并包含合并

c# - 避免数据库调用以减少内存