まず、私は MVC と EF の完全な初心者だと言わざるを得ません。Database First を使用してモデルを作成し、2 つのテーブル ユーザー ---> ユーザーの詳細 (関連) を選択しました。
モデルは正常に生成され、正常に検証されます。単純なデータ アクセスを試みると、これも正常に機能します。
これをMVC 4スキャフォールディングと選択した新しいコントローラー/ EFフレームワークの追加/更新/削除などと組み合わせようとすると、ユーザーモデル+ユーザーコンテキストに入れ、自動生成されたモデルにキーがないと文句を言います。
エンティティ タイプ - 「ユーザー」にはキーがありません。モデルを開くと、実際にキーがあり、エンティティ キーのチェック ボックスがオンになっていることがわかり、プロパティの横に小さな「キー」記号が表示されます。
User.cs を手動で開き、キーの横に [Key] 属性を配置することだけが機能する唯一の解決策を見てきました。これはすべてのキーですか?私は何か間違ったことをしていますか?
User と UserDetails の両方の cs ファイルにキーを追加したので、それは不平を言うのをやめ、今は不平を言い始めます:
ユーザーのメタデータを取得できません。User と UserDetail の間の関連付けの原則的な終了を判別できません。この関連付けの主な目的は、リレーションシップ fluent API またはデータ アノテーションのいずれかを使用して明示的に構成する必要があります。
2 つの質問があります。
- このように自動生成されたファイルをいじる必要がありますか? または私は何か間違ったことをしていますか?2/ この 2 番目の問題を解決するにはどうすればよいですか?
このような問題が次々と発生するべきではないので、何かがおかしいと感じますか?