1
我一直在EF 4.0插入遇到問題。EF 4.0批插入與單插入異常
從一個系統遷移到另一個系統時,我將三個配置表的值遷移到EF前端的數據庫中。
下面的代碼崩潰:
foreach (MyModel model in models)
{
if(entities.my_Model.Where(p => p.Id == model.modelId).Count() == 0)
{
entities.AddTo_MyModel(new MyModel()
{Name = model.Name, Id = model.modelId});
}
}
entities.SaveChanges();
注意,調用的SaveChanges將與約束異常崩潰,表明ID(PK)的值已經存在。我不會嘗試插入重複項。
以下代碼DOES正常運行。
foreach (MyModel model in models)
{
if(entities.my_Model.Where(p => p.Id == model.modelId).Count() == 0)
{
entities.AddTo_MyModel(new MyModel()
{Name = model.Name, Id = model.modelId});
entities.SaveChanges();
}
}
注意移動的保存。
有什麼我基本上不了解EF?
絕對正確。爲我的關閉創建一個局部變量解決了這個問題。 – jhappoldt 2010-05-20 18:00:35