2012-12-10 90 views
1

我在連接了2個實體的上下文中調用saveChanges。實體「A」接收其值的更新,「B」不會更改。實體框架SaveChanges保存不變記錄(通過存儲過程映射)

當我暫停SaveChanges之前的代碼行並檢查'B'實體並且它顯示「EntityState = Unchanged(2)」時。

我讓代碼完成運行,並最終使用存儲過程映射到'B'實體的更新執行。

我預計這不會發生,爲什麼?

感謝 戈德

EF 4.0.30319

+0

什麼版本的實體框架?有點複製[this](http://stackoverflow.com/questions/2931628/entity-framework-4-entity-with-entitystate-of-unchanged-firing-update) –

+0

實體框架4.0.30319 – gjones

+0

我相信這可能是一個已知的錯誤,該版本已被糾正。備份你的文件,更新到最新,看看你是否仍然有問題。 –

回答

0

我懷疑這個問題的that one重複。

要重複給那裏的答案:

也就是說這種情況發生時的問題:

  • 在.NET Framework版本4.0上運行的實體框架;
  • 使用自定義映射SQL代碼;

這個問題可以固定在1 3的方式:

  • 獲取和微軟MS KB 2390624描述部署修補程序 - 這一請求需要從微軟支付的援助(例如通過公司支持合同);
  • 升級到.NET 4.5(只有一個選項,如果你不必擔心Windows XP了);
  • 升級到實體框架6(目前處於測試階段,但我希望它不會出現該錯誤);