'DropDown.cshtml'という名前の次のエディターテンプレートがあります。パーツは正常に機能し、テンプレートは、からlist
必要なものを取得するために行ったブードゥーを使用します。コントローラは、ビューモデル内のすべての選択リストをに配置します。リスト側に問題はありません。SelectList
ViewData
ViewData
@{
var list = this.GetModelSelectList();
}
@Html.DropDownListFor(m => Model, list)
このテンプレートは、次のような外部キービューモデルのプロパティで使用します。
[Required]
[UIHint("DropDown", "MVC", "SelectListName", "JobLevelSelectList")]
[Display(Name = "Job Level")]
public Guid? JobLevelId { get; set; }
public SelectList JobLevelSelectList { get; set; }
コントローラでJobLevelId
は、ビューを実行する直前に正しい値がありますが、レンダリングされたselect
要素で選択したアイテムはありません。むしろ、選択リストの最初の項目が常に選択されます。
DropDownListFor
エディターテンプレートで使用するときにプロパティ値を無視し、直接呼び出すと正常に機能するのはなぜですか?