據我瞭解,如果我更改條目的狀態情況下那樣:如何添加一個沒有相關實體但保存關係的實體?
context.Entry(doc).State = EntityState.Added;
背後doc
整個對象圖將被設置爲EntityState.Added
。這就是這個機制是如何描述here:
注意,所有的這些例子中,如果要添加的實體具有 引用其他實體尚未追蹤那麼這些新 實體也將添加到上下文和將在下次調用SaveChanges時插入到 數據庫中。
在我的情況下,這種行爲是不可取的。當我收到doc
實體時,它的關係已經在數據庫中(被添加到不同的上下文中)並且再次添加它們會導致錯誤。我需要將doc
添加到包含所有引用的數據庫中,但不要嘗試在圖中添加其他對象。
當然,我可以遍歷所有圖形,並明確設置狀態,但有一個更簡單的方法存在嗎?