'DropDown.cshtml'という名前の次のエディターテンプレートがあります。パーツは正常に機能し、テンプレートは、からlist必要なものを取得するために行ったブードゥーを使用します。コントローラは、ビューモデル内のすべての選択リストをに配置します。リスト側に問題はありません。SelectListViewDataViewData
@{
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エディターテンプレートで使用するときにプロパティ値を無視し、直接呼び出すと正常に機能するのはなぜですか?