質問する
83 次
2 に答える
0
HttpPost に関しては、View はすべての FormCollection をコントローラーに返します。したがって、フォーム要素、つまりテキストボックス、ドロップダウン、または非表示フィールドに格納されている値が常に含まれます。
あなたの場合、フォームコレクションにあり、DropDown要素に関連付けられているため、homeViewModelにはSelectedCountryプロパティの値が含まれている必要がありますが、CountryListは要素に関連付けられていないため、nullが返されます。
ビューからコントローラーにコレクションを返すには、このスレッドを見つけてください。
幸運を !!
于 2012-09-01T11:44:17.560 に答える
0
どうもありがとうクンダン、複数の非表示フィールドが問題を解決します。
@Html.DropDownListFor(model => model.SelectedCountry, new SelectList(Model.CountryList, "CountryCode", "CountryName"), "---SELECT COUNTRY---",
new { @class = "chosen", @onchange = "this.form.action='/Home/Index'; this.form.submit(); " })
@if (Model.CountryList != null)
{
for (int i = 0; i < Model.CountryList.Count; i++)
{
@Html.HiddenFor(model => model.CountryList[i].CountryCode)
@Html.HiddenFor(model => model.CountryList[i].CountryName)
}
}
于 2012-09-01T13:18:44.367 に答える