3

私は Microsoft Azure の美しい世界の初心者で、初めて Hello World Web サイトを作成しました。次のステップは、データベース (entityframework) を作成することですが、PackageManagerConsole (PMC) からデータベースを作成しているときに例外が発生します。startupprojectname を PS コマンドに追加する必要があることを説明した Web 上の投稿をいくつか読みましたが、残念ながらそれで問題は解決しません。

私のソリューションには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」を選択し、「管理」をクリック
  • 「モデル」プロジェクトを確認します (Web サイト プロジェクトと「モデル」プロジェクトの両方を確認しました)。

enable-migrations コマンドを再度実行します。

また、自分の Website プロジェクトから Models プロジェクトへのプロジェクト参照を追加しましたが、それが重要かどうかはわかりません。

NuGet での調整後に正常に実行されたコマンド:

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

この回答が、道に迷った別の兵士が Azure で最初のアプリを実行するのに役立つことを願っています :)。

乾杯、

バス

于 2012-12-23T10:11:17.537 に答える