У меня есть следующие в моей точки зрения в качестве ASP.NET MVC веб-приложения: -как получить доступ к выбранному значению из HTML.Dropdownlist
@Html.DropDownList("siteName", ((IEnumerable<TMS.Models.SDOrganization>)ViewBag.sites).Select(option => new SelectListItem {
Text = (option == null ? "None" : option.NAME),
Value = option.NAME,
Selected = (Model != null) && (Model.Resource.SiteDefinition != null) && (Model.Resource.SiteDefinition.SDOrganization != null) && (option.NAME.ToUpper() == Model.Resource.CI.SiteDefinition.SDOrganization.NAME.ToUpper())
}), "Choose...")
, но в настоящее время выпадающий список всегда будет показывать «Выбрать» , вместо отображения значения, связанного с текущим объектом модели. имея в виду, что если я напишу следующее непосредственно в своем представлении @Model.Resource.CI.SiteDefinition.SDOrganization.NAME.ToUpper();
, он покажет правильные результаты.
Спасибо за yuor любезного ответ. но что, если модель равна null или Model.Resource имеет значение null. это вызовет исключение. ? –
Если модель равна нулю, вы не хотите отображать что-либо в своем представлении, верно? Итак, просто поместите DropDownList внутри предложения if и проверьте, не является ли модель нулевым. – ataravati
Вы правы, я могу проверить, является ли модель нулевой или нет. но я стараюсь избегать такого рода проверки на вид и держать мое мнение как можно более чистым. –