3

我是 Microsoft Azure 美丽世界的新手,并创建了我的第一个 hello world 网站。下一步是创建数据库(实体框架),但在从 PackageManagerConsole(PMC)创建数据库时出现异常。我在网上阅读了一些帖子,解释说我需要将 startupprojectname 添加到 PS 命令中,但不幸的是,这并不能解决我的问题。

我的解决方案中有 2 个项目。

  • “partyonwebsite”这是启动项目,显然是我的网站:)。
  • “模型”,我将在其中设计我的模型/实体。

在“模型”项目中,我有“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))

我看过 get-help enable-migrations 并玩了一点,但运气不佳。

有人遇到同样的问题吗?或者你能指出我正确的方向来帮助我解决它吗?

提前非常感谢!

巴斯

4

1 回答 1

5

解决了。如果您遇到同样的问题,请确保为您的单独“模型”项目正确设置了 EntityFramework。

  • 在解决方案资源管理器中打开“管理解决方案的 NuGet 包”(在解决方案资源管理器中右键单击解决方案)
  • 选择“已安装的包”
  • 选择“EntityFramework”并单击“管理”
  • 检查您的“模型”项目(我检查了我的网站项目和“模型”项目)

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

我还将我的网站项目中的项目引用添加到模型项目中,我不知道这是否重要。

我在 NuGet 中调整后成功执行的命令:

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

希望这个答案能帮助另一个迷路的士兵在 Azure 中运行他的第一个应用程序:)。

干杯,

巴斯

于 2012-12-23T10:11:17.537 回答