我們有一種情況。我們公司的Framework基於.net,由使用該框架開發的產品使用。現在這個框架首先使用EF代碼。我們希望通過生成的遷移定義來實現EF代碼遷移,因爲我們的實體存在於其中一個Framework項目中。所以我已經實現了它。但情況是,我們將這個框架作爲Nuget包(內部)分發給其他產品。通過nuget參考dll中的EF代碼遷移
現在情況可以說產品A正在使用包含xyz.dll的包,該包中包含已啓用遷移的xyz.dll。現在,「ProductA」的開發人員希望首先使用xyz.dll遷移來升級由Framework EF代碼創建的數據庫,但該dll僅作爲引用的dll添加。因此,在包管理器控制檯(如Update-Database)中運行命令不起作用,因爲項目不在當前解決方案及其參考DLL中
如何解決此問題?
但會是什麼我的更新命令看起來像 – user393014
我知道依賴的事情,但我不認爲你明白我所描述的問題,當你打開包管理器控制檯的更多細節並運行update-database,如果你沒有提供帶參數的項目名稱,那麼它將採用包管理器控制檯中選擇的默認項目,所以它的拋出錯誤get-project失敗 – user393014
更新數據庫命令包含在獲取導入的powershell中與EF nuget包。這意味着除非你的解決方案中包含了它,否則它不會在包管理器控制檯中可用。 –