我想在下拉列表中列出用户,这是我的控制器:
var user = db.Users.Where(e => e.Roles.All(r => r.RoleId != "1"))
.OrderBy(e => e.UserName);
ViewBag.UserId = new SelectList(user,"Id", "UserName");
return View();
这是我的观点:
@Html.DropDownList("UserId", null, htmlAttributes: new { @class = "form-control" })
我可以在下拉列表中显示用户,但是当我尝试发布某些内容时,ModelState无效且会出错。
答案 0 :(得分:2)
SelectList
中ViewBag
的{{1}}名称与您正在编辑的媒体资源相同。将其更改为ViewBag.UserIdChoices
,您就可以了。