向表中添加列後,DbContext中出錯(ASP.NET/EF Core)

asp.net-core entity-framework-core model

一切正常,直到我在表格中添加了一個新列。我找不到如何更新模型類,所以我在模型中自己添加了列。但是現在,當我運行我的應用程序時,我收到錯誤:“對象引用未設置為對象的實例。”

在調試期間,我發現創建dbcontext實例的問題是:

MyDbContext context = new MyDbContext(db);

上下文對像是不從表中獲取行並且正在給出此Object引用錯誤。

如果我從Model類中刪除新列,那麼它可以正常工作。這表明我的數據庫和模型不同步,似乎應用程序正在使用舊的表設計。

我也嘗試使用CLI命令更新數據庫,但也遇到了困難。

有人建議如何在添加表格列後使模型類和表格設計同步嗎?我正在使用ASP.NET Core和EF Core。

謝謝。

熱門答案

把try catch找到確切的問題。

出現此問題的原因是數據庫架構和代碼級別更改的架構之間的差異。你需要添加這一行。

Database.SetInitializer<yourDbName>(new DropCreateDatabaseIfModelChanges<yourDbName>());

它將同步您的數據庫。



Related

許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因