我想知道为什么AutoDetectChangesEnabled
DbContext 上的属性默认设置为 false 。
我想批量插入到我的上下文中,您可能知道将自动检测设置为 false 会带来更好的性能。
我的意思是,如果我知道何时检测到我的上下文的变化,我有什么理由不应该设置AutoDetectChangesEnabled
为false
?
我想知道为什么AutoDetectChangesEnabled
DbContext 上的属性默认设置为 false 。
我想批量插入到我的上下文中,您可能知道将自动检测设置为 false 会带来更好的性能。
我的意思是,如果我知道何时检测到我的上下文的变化,我有什么理由不应该设置AutoDetectChangesEnabled
为false
?
我认为他们可能希望开箱即用的更常见和非常有用的行为。
var mycontext = new DemoContext();
var myEntity = myContent.Thinhymybobs.find(akey);
myEntity.PropX = newvalue;
mycontext.saveChnages();
发送到数据库的更新是 delta 感知的,并相应地使用更新集语句。所以这对数据库很友好。
在数据库上执行“批量”操作时,性能问题通常是一个自然的想法。所以想知道关闭更改或者甚至使用跟踪是我觉得的一个可能的问题。
这篇文章可能会让你感兴趣。条目的状态。 http://msdn.microsoft.com/en-us/data/jj592676.aspx