2012-11-09 49 views
0

我在做一個標準的功能是這樣的:DbSet <>。添加會導致調用SaveChanges。爲什麼?

var dbCxt = new dbContext(); 
var entity = new entity(); 
entity.Property = "123"; 
dbCxt.EntitySet.Add(entity); <== SaveChanges is called!!!! 

//Do some child stuff. 

dbCxt.SaveChanges(); 

我很驚訝,當我推翻在的DbContext SaveChangs,把一個破發點,它正在呼籲加入到DbSet。爲什麼它在Add上調用它?它應該只在SaveChanges上像ObjectContext那樣調用它!

我該如何防止這種瘋狂? (做任何交易的東西太多了!)

謝謝!

回答

2

我想出了它爲什麼這樣做。這是一個代碼第一次遷移的帖子,在變更追蹤器中沒有任何內容,所以除了做遷移工作之外,沒有任何事情從EF的角度出現。它只發生在你第一次對DbContext做任何事情時。

相關問題