在我们的一个ASP.NET MVC 4视图中,我们有一个DropDownListFor(以及其他html控件),如下所示:
@Html.DropDownListFor(model=>model.ProductType,
(List<SelectListItem>)ViewBag.ProductType,
"--- Select Product Type ----")
列表将从数据库查找表中填充。当我们单击提交按钮时,所有控件值(包括下拉列表的选定值)都会成功插入到数据库中。但是当显示页面时,下拉列表的选定值始终显示“---选择产品类型----”而不是插入数据库的值。
请帮忙。感谢。
答案 0 :(得分:2)
您需要在Controller内的SelectList中设置所选值,即ViewBag.ProductType。
查看SelectList类的重载。
http://msdn.microsoft.com/en-us/library/system.web.mvc.selectlist(v=vs.118).aspx
public ActionResult MyMethod()
{
var items = db.ProductType.ToList();
var selectedItem = items.FirstOrDefault(x => get desired selected item);
ViewBag.ProductType =
new SelectList(items, "ProductID", "ProductType", selectedItem);
}