我試圖在數據存儲庫中使用實體框架核心,但我無法讓EF創建數據庫。實體框架構建存儲庫時的核心工具
在以前的EF版本中,它都是自動發生的,如果EF在第一次嘗試對數據執行任何操作時不存在,EF會創建數據庫。
現在,我在文檔上看到了使用EF遷移的說明。該指令是安裝的依賴和工具:
- Microsoft.EntityFrameworkCore.Design
- Microsoft.EntityFrameworkCore.Tools
,並與dotnet ef database update
一起運行dotnet ef migrations add MigrationName
。
現在來了這件事。在構建存儲庫時,我有一個項目AppName.Data
(其中存儲庫已實施)和一個項目AppName.WebApi
(其中存儲庫已耗盡)。
如果我嘗試添加工具並從AppName.Data
運行dotnet ef
它不起作用,因爲AppName.Data
是一個庫。該錯誤消息表示該工具只能用於一個可執行應用程序的上下文中。
接下來的嘗試是從AppName.WebApi
運行dotnet ef
,這是可執行的。現在dotnet ef
的作品,但如果我嘗試dotnet ef migrations add InitialMigration
創建數據庫我得到一個錯誤,因爲DbContext
不在AppName.WebApi
項目,但在另一個項目。
我真的不知道該怎麼做。因此,如果我想讓EF創建數據庫以及所有這些,並且我想使用存儲庫,那麼對於可執行項目沒有EF特定的代碼,我該怎麼做?
在程序包管理器控制檯中,指向applicationdbcontext所在的項目,然後運行它。 – Thennarasan