これは私を夢中にさせており、StackOverflow の関連記事を調べました。
基本的に、Album と Genre の 2 つのテーブルがあり、前者には Genre への外部キーがあります。EF5 の Model First を使用してこれをモデル化し、MS の T4 ジェネレーターを使用してコンテキスト ファイルとクラス ファイルを生成しました。したがって、私の Domains Class コードは次のとおりです。
{
using System;
using System.Collections.Generic;
public partial class Album
{
public int Id { get; set; }
public string Title { get; set; }
public decimal Price { get; set; }
public string AlbumArtUrl { get; set; }
public int GenreId {get; set;}
public virtual Genre Genre { get; set; }
}
}
追加したことに気付くでしょう:
public int GenreId {get; set;}
ガイダンスに従って、スキャフォールディングがビューでドロップダウンを作成し、コントローラーで「SelectList」コードを作成できるようにします。しかし、そうではありません!ただし、ビューには次のものが作成されます。
<div class="editor-label">
@Html.LabelFor(model => model.GenreId)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.GenreId)
@Html.ValidationMessageFor(model => model.GenreId)
</div>
だから私は本当に困惑しています。どんなアイデアでも大歓迎です。
ありがとう、
エド
PS ASP.NET MVC 3 Tools Update を使用して VS2010 SP1 を実行しています。インストールしようとしたところ、既にインストールされていると表示されたためです。