【发布时间】:2012-04-06 04:05:46
【问题描述】:
我尝试搜索并没有找到任何解决我问题的方法。我在 Razor 视图上有一个 DropDownList,它不会显示我在 SelectList 中标记为 Selected 的项目。这是填充列表的控制器代码:
var statuses = new SelectList(db.OrderStatuses, "ID", "Name", order.Status.ID.ToString());
ViewBag.Statuses = statuses;
return View(vm);
查看代码如下:
<div class="display-label">
Order Status</div>
<div class="editor-field">
@Html.DropDownListFor(model => model.StatusID, (SelectList)ViewBag.Statuses)
@Html.ValidationMessageFor(model => model.StatusID)
</div>
我浏览了它,即使在视图中它也有正确的 SelectedValue 但是 DDL 总是显示列表中的第一项,而不管选择的值是什么。谁能指出我做错了什么让 DDL 默认为 SelectValue?
【问题讨论】:
-
alok_dida,我看了看,它看起来非常相似,除了在构造 SelectList 中选择的值使用整个对象而不是 ID.ToString() 就像我正在做的那样。但是我改变了我的代码来做同样的事情,它并没有解决问题。我缺少的两者之间有什么区别可以解决我的问题吗?
-
我添加了一个详细的例子来说明如何做到这一点。
-
这样可以解决dd stackoverflow.com/questions/11042660/…的问题 谢谢。
标签: asp.net-mvc asp.net-mvc-3 html.dropdownlistfor