支援“XX”上下文的模型已在資料庫建立後發生更改。請考慮使用 Code First 遷移更新資料庫(http://go.microsoft.com/fwlink

竹林聽雨行發表於2019-03-24

問題:使用Entity Framework遷移完資料庫後,每次修改程式碼(非模型程式碼)後都報錯:

支援“THDbContext”上下文的模型已在資料庫建立後發生更改。請考慮使用 Code First 遷移更新資料庫(go.microsoft.com/fwlink/?Lin…)。 這時如果執行 Add-Migration 生成的遷移程式碼是空的。於是重新Update-Database,結果卻是No pending explicit migrations.

不過這時是不報錯了,可是每次修改程式碼都要Update-Database。非常怪異,除錯好久都沒有發現問題在哪兒,於是懷疑是Entity Framework的Bug,讀了一下Entity Framework的原始碼,發現讀不懂,水平太有限了。

於是網上查了一下,有一個解決方案:

Database.SetInitializer(null);

把上面這句放到Application_Start()裡就好了,但是感覺這不是一個從根本上解決問題的方法。

終於,偶然在stackoverflow上發現了這篇文章,原來果然是Entity Framework 6.0.0 的Bug。於是升級到6.1.0,這個問題就沒有了。

作者:完美主義 來源:CSDN 原文:blog.csdn.net/wmzy1067111… 版權宣告:本文為博主原創文章,轉載請附上博文連結!

相關文章