0
實體框架代碼 - 首先,如果SaveChanges方法因爲嘗試更新用戶剛剛在另一臺機器上刪除的記錄而失敗,如何告知EF插入記錄而不是更新它?實體框架代碼 - 刪除時的第一個併發性
實體框架代碼 - 首先,如果SaveChanges方法因爲嘗試更新用戶剛剛在另一臺機器上刪除的記錄而失敗,如何告知EF插入記錄而不是更新它?實體框架代碼 - 刪除時的第一個併發性
一個解決方案(可能不是最好的)是將你的調用SaveChanges()的代碼放在try/catch塊中。如果發生異常,請檢查記錄是否被刪除,並將實體的狀態設置爲EntityState.Added並再次調用SaveChanges。
如何檢查記錄是否被刪除?我是否必須爲上下文「交易」中的每條記錄執行此操作? –
我假設你正在嘗試更新一條記錄。也許處理這種情況的最好方法是將記錄標記爲已刪除(使用軟刪除),並且在更新時總是將deleted標記爲false。 –
我曾考慮過這種替代方案,但它引發了更多的問題,我不得不改變所有的查詢,並再增加一個Where子句,我期待着另一種解決方案。不管怎麼說,還是要謝謝你 :) –