這個問題是我們實際開發中遇到過的問題。
可能的原因:數據庫在執行數據表遷移的時候,數據表執行成功,最后插入EF數據遷移表__MigrationHistory的時候,沒有把所有的命令行完整插入,缺失了一部分導致的。
解決辦法:
1、先導出數據遷移表的sql
Nuget 里面執行:entityframework\update-database -f -script
2、查詢數據庫該表中對應的字段,是否有值,如果有,需要先備份表數據。
3、手動刪除物理表的字段,之后用EF執行正常遷移即刻。不出意外應該能遷移成功。
以上內容經過實際的測試。希望對大家有所幫助。