如何在 SelectList 中显示所选 id (CountryId) 中的文本值(CountryName)?SelectList 包含在发送到详细信息视图模板的视图模型中。该字段当前显示 CountryID。我想要国名。
看法
<div class="display-field">@Model.Dinner.CountryID</div>
控制器
public ActionResult Details(int id)
{
Dinner dinner = dinnerRepository.GetDinner(id);
DinnerFormViewModel model = new DinnerFormViewModel(dinner);
if (dinner == null)
return View("NotFound");
else
return View("Details", model);
}
视图模型
public class DinnerFormViewModel
{
public Dinner Dinner { get; private set; }
public SelectList CountriesList { get; private set; }
public DinnerFormViewModel(Dinner dinner)
{
Dinner = dinner;
var items = new List<Country>() {
new Country() {
CountryID = 1,
CountryName = "England"
},
new Country() {
CountryID = 2,
CountryName = "Ireland"
},
new Country() {
CountryID = 3,
CountryName = "Scotland"
},
new Country() {
CountryID = 3,
CountryName = "Wales"
}
};
CountriesList = new SelectList(items, "CountryID", "CountryName", 2);
}
}
同样,这只是为了在标签中显示 CountryName 值。不想编辑它或任何东西。LINQ 表达式?