0
我有一個可以生成多個訂單的應用程序。在第一次運行時,這工作得很好,但是當我創建第二個命令並嘗試將其保存到數據庫時,我得到一個錯誤,即具有相同鍵的對象已經存在於ObjectStateManager中。忽略SaveChanges上的引用對象()
我懷疑這不是因爲新創建的訂單對象,而是因爲持有的參考。但即便如此,假定合併選項爲AppendOnly,則應在SaveChanges()調用中忽略這些附加對象。
爲訂單對象的生成代碼去如下:
public void GenerateOrder(){
Order order = new Order();
order.Items.Add(item1);
order.Items.Add(item2);
}
public void AddOrder(Order order){
_context.Orders.Add(order);
_context.SaveChanges();
}
您可以請發佈一些您的代碼?如果沒有看到自己的代碼,診斷程序中出了什麼問題有點困難 – IronMan84
僅應使用數據庫中已有的對象進行附加操作,否則應該添加它們。 – Shoe
與論壇網站不同,我們不使用「謝謝」或「任何幫助表示讚賞」,或在[so]上簽名。請參閱「[應該'嗨','謝謝',標語和致敬從帖子中刪除?](http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations-be –