【发布时间】:2012-08-29 11:19:53
【问题描述】:
@Html.DropDownListFor(m => m.branch, CommonMethod.getBranch("",Model.branch), "--Select--", new { @multiple = "multiple" })
@Html.DropDownListFor(m => m.division, CommonMethod.getDivision(Model.branch,Model.division), "--Select--", new { @multiple = "multiple" })
我有两个 DropDownListFor 实例。我想为那些先前存储了 Model.branch 和 Model.division 值的对象设置为 true。这些是存储 id 的字符串数组
class CommonMethod
{
public static List<SelectListItem> getDivision(string [] branchid , string [] selected)
{
DBEntities db = new DBEntities();
List<SelectListItem> division = new List<SelectListItem>();
foreach (var b in branchid)
{
var bid = Convert.ToByte(b);
var div = (from d in db.Divisions where d.BranchID == bid select d).ToList();
foreach (var d in div)
{
division.Add(new SelectListItem { Selected = selected.Contains(d.DivisionID.ToString()), Text = d.Description, Value = d.DivisionID.ToString() });
}
}
}
return division;
}
}
div的返回值在模型中被选中的item被选为true,但是在view侧没有被选中。
【问题讨论】:
-
我不明白你的问题。是否只是如何设置下拉列表中选择的值?
-
是的,我想获取要选择的值,这些值之前在页面加载时存储在数据库中。
标签: c# asp.net-mvc asp.net-mvc-3 razor html.dropdownlistfor