我从Exception
获得了以下View
。
发生了'System.InvalidOperationException'类型的异常 System.Web.Mvc.dll但未在用户代码中处理
其他信息:没有类型的ViewData项 “IEnumerable”具有键'Profile_Id'。
从视图
@Html.DropDownList("Profile_Id", String.Empty)
控制器
public ViewResult Index( string name, string Profile_Id, int? page)
{
...
ViewBag.Profile_Id = new SelectList(db.PROFILE.Where(y => y.ID== myId ), "Profile_Id", "Name");
return View(prof.ToPagedList(pageNumber, pageSize));
}
答案 0 :(得分:2)
我认为在第一次从GET / Index操作呈现此视图时,您没有收到此错误,而是当您将相应的表单提交到呈现相同视图的POST操作时。
要修复此错误,请确保在POST操作中 ,您还要像在GET操作中一样填充Profile_Id
属性,如果您打算渲染相同的视图,因为它依赖于它:
[HttpPost]
public ActionResult Index(MyViewModel model)
{
... process the data
// populate the Profile_Id property because we are
// redisplaying the same view which depends on it in order
// to show the corresponding dropdown
ViewBag.Profile_Id = new SelectList(db.PROFILE.Where(y => y.ID== myId ), "Profile_Id", "Name");
return View(model);
}