2012-12-22 59 views
2

我是微軟Azure美麗世界的一名newby,並且創建了我的第一個hello world網站。下一步是創建一個數據庫(entityframework),但從PackageManagerConsole(PMC)創建數據庫時出現異常。我在網上閱讀了幾篇文章,解釋說我需要將startupprojectname添加到PS命令中,但不幸的是,這並不能解決我的問題。EntityFramework enable-migrations ArgumentException

我在我的解決方案中有2個項目。

  • 「partyonwebsite」這是啓動項目,顯然是我的網站:)。
  • 「模型」,我將設計我的模型/實體。

在「models」項目中,我有類「User」和「UsersDb」。 UsersDb是從DbContext繼承的類。

現在,當我執行在PMC以下行:

enable-migrations -StartUpProjectName "PartyOnWebsite" -ContextTypeName "Models.Users.UsersDb" 

我收到以下(不是非常有幫助)錯誤:

System.ArgumentException: The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG)) 
The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG)) 

我看了一下獲取幫助啓用遷移,併發揮了一點,但不是很多運氣。

有沒有人遇到同樣的問題?或者你能否指出我正確的方向來幫助我解決問題?

非常感謝!

巴斯

+0

嘗試在Visual Studio中明確設置你的啓動項目(右鍵 - >設置爲啓動項目)上的「模型」項目,然後只需運行從PMC允許的遷移,沒有所有絨毛,會發生什麼? –

+0

同樣的故事,論證。 – bas

回答

4

解決。如果遇到同樣的問題,請確保EntityFramework正確設置了您的單獨「Models」項目。

  • 在解決方案資源管理器中打開 「管理的解決方案的NuGet包」(在Solution Explorer中右鍵單擊解決方案)
  • 選擇 「安裝包」
  • 選擇 「的EntityFramework」,然後單擊 「管理」
  • 檢查「模型」項目(我檢查了我的網站項目和「模型」項目)

再次運行您的enable-migrations命令。

我還從我的網站項目添加了一個項目參考到Models項目,我不知道這是否重要。

中的NuGet後我調整中成功執行的命令:

enable-migrations -ProjectName Models -ContextTypeName Models.Users.UsersDb 

希望這個答案可以幫助他的道路上又失去了士兵得到他的第一個應用程序在Azure中運行:)。

乾杯,

巴斯

相關問題