我的处境很奇怪。我阅读了 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/