簡體   English   中英

在EF中,從SavingChanges事件調用SaveChanges嗎?

[英]In EF, call SaveChanges from SavingChanges event?

我在MVC 3應用程序中使用EF 4.1。

我的目標是將所有更改保存在另一個數據庫中以進行日志記錄。

我已經為EntityContext實現了SavingChanges事件。 在那種情況下,我通過GetObjectStateEntries()提取更改,效果很好。

然后,我有另一個EntityContext ,它可以針對不同的模型和數據庫進行記錄。 我創建該上下文,創建日志記錄實體,並將它們添加到日志記錄上下文中。 一切似乎都正常。 然后,當我在日志記錄上下文中調用SaveChanges()時,發生異常,這表示我無法插入,因為Id為null(我確定不是)。

有人知道這是否不可能嗎? 我是否缺少一些重要的細節?

情況是我在日志模型中使用了“模型優先”,而在所有其他模型中都使用了“數據庫優先”。 這導致了EF配置期望照顧Id(GUID)本身的錯誤,但是我試圖自己提供一個。 我從模型中刪除了實體,而是從數據庫中導入了實體,這就解決了問題!

感謝@Eranga為我設定了正確的方向。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM