在MVC DropDownList中预选一个Item

时间:2011-08-10 08:03:29

标签: asp.net-mvc asp.net-mvc-3

请在此代码中说明错误。我无法选择项目

@{
    ViewBag.Title = "Users";
    objUser user = (objUser)Session["userdet"];
}

@Html.DropDownListFor(model => model.User, new SelectList(Model.UserList, "Id", "Name", user.Id))

我还应该使用DropDownListFor还是DropDownLisT?

2 个答案:

答案 0 :(得分:0)

问题在于代码“model => model.User”。

什么是“。用户”设置为?如果它不是== user.Id,那么代码将不起作用。我认为model.User在语句末尾覆盖了“user.Id”,因此“user.UserId”没有意义

答案 1 :(得分:0)

John Stuntz是正确的,xxxFor帮助器不会考虑SelectListItem中的Selected属性(包含在SelectList对象中)。您可以在控制器中执行的操作是:

model.User = user.id;
return View();

并在您看来:

@Html.DropDownListFor(model => model.User, new SelectList(Model.UserList, "Id", "Name"))