2015-04-01 37 views
0

我編寫了一個MVC 5互聯網應用程序,並使用了實體框架6.我有一個Asset對象,可以在很多Image對象中引用。同時更新許多DbSet對象

當我編輯資產對象時,我需要更新存儲在所有引用的圖像對象中的DateTime對象。如果有50個需要更新的Image對象,我可以在一個數據庫事務中執行此操作,而不是檢索Image對象,循環訪問每個Image對象,更新DateTime對象,然後更新數據庫中的每個Image對象?

在此先感謝。

回答

0

據我知道,如果你循環和更新每個,但在循環後調用context.saveChanges()它應該在一個事務中提交,因爲事務沒有完成,直到saveChanges被調用。

+0

我該如何檢查是否屬於這種情況? – user3736648 2015-04-01 12:11:56

+0

你可以打開SQL管理工作室連接到你的數據庫,然後去工具> SQL服務器分析器。這將顯示所有數據庫事務,如果只有一個在循環後執行,那麼你應該只看到一個。在那裏調試到saveChanges行。當你繼續時,你應該在profiler中看到事務。 – Dhunt 2015-04-01 12:14:05