我很奇怪。我读到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 does not contain a definition for 'Configuration' and no extension method 'Configuration' accepting a first argument of type 'ROS.DefaultCS' could be found (are you missing a using directive or an assembly reference?)
答案 0 :(得分:4)
答案如下:在实体框架4中,我们应该使用db.Orders.MergeOption = MergeOption.NoTracking;
而不是db.Configuration.AutoDetectChangesEnabled = false;
,这仅适用于实体框架5.
EF4和EF5的代码
在EF4中
db.Orders.MergeOption = MergeOption.NoTracking;
在EF5中
db.Configuration.AutoDetectChangesEnabled = false;
EF4的降级是为每个实体设置它。