一種製品視圖模型入門從DropDownList中在asp.net MVC 3
public class ArticleViewModel : ViewModelBase
{
[Required(ErrorMessage = "Required")]
public string Title { get; set; }
[Required(ErrorMessage = "Choose the language")]
public BELocale Locale { get; set; }
}
public class BELocale : BEEntityBase
{
public string OriginalName { get; set; }
public string FriendlyName { get; set; }
public string TwoLetterISOName { get; set; }
}
視圖 「AddLocaleForArticle」
@model Models.ArticleViewModel
@using (Html.BeginForm("VefifyAddingLocaleForArticle", "Administration"))
{
@Html.TextBoxFor(m => m.Title, new { disabled = "disabled" })
@Html.DropDownListFor(m => m.Locale,
new SelectList(ViewBag.AvalaibleLocales, "ID", "OriginalName"), "Select a language"
)
@Html.ValidationMessageFor(m => m.Locale)
<input type="submit" value="Save" />
}
一個動作
public ActionResult VefifyAddingLocaleForPhoto(ArticleViewModel article)
{
//article.Locale == null for some reason.
//but article.Title isn't null, it contains the data
return RedirectToAction("AddingLocaleForPhotoSuccess", "adminka");
}
爲什麼article.Locale選定值是否等於null以及如何修復它?
檢查HTML中的下拉列表的名稱 –
HTML中的名稱爲「Locale」。 – Alexandre
「ID」似乎不存在於您的視圖模型中 – Tassadaque