我有以下代码,旨在用一堆整数值填充下拉列表,并使当前选定的值(在本例中为 13)成为选定项。
我使用了相同的技术,但对于字符串值,它工作得很好,每次我进入视图时都会记住当前值是什么。
在控制器中:
var x = new[] { 1, 2,3,4,5,6,7,8,9,10,11,12,13,14,15 };
ViewData["Field"] = new SelectList(x, 13);
鉴于:
<%=Html.DropDownList("Field", (IEnumerable<SelectListItem>)ViewData["Field"])%>
当我调试并观察 ViewData["Field"] 对象时,它的 selectedValue 确实为 13,因此它必须到达 View 但在那里被忽略,因为我在页面上看到的只是一个值为 1 到 15 的下拉列表,但显示 1 个(未选择,因此显示第一个)
这是一个错误还是我在做一些非常愚蠢的事情?
谢谢
格雷姆