如何修复错误:系统.InvalidOperationException



我有下拉列表,当我上传页面时,我得到错误:系统。InvalidOperationException:";具有关键字"id_Language"的ViewData项的类型为"System"。字符串",但必须是"IEnumerable"类型">

我的代码的这一部分:

<div class="form-group">
@Html.LabelFor(m => Model.id_Language, Resource.Language)
<div class="col-sm-12 col-lg-6">
@Html.DropDownList("id_Language", ViewBag.language as SelectList, new { @class = "form-control", @required = "required" })
</div>
</div>

对我来说,解决方案是在控制器中添加SelectList,并在View 中共享ViewBag日期

public ActionResult AddUser(){
UserInfo u = new UserInfo(db);
var languages = db.tbLanguage.Select(s => new SelectListItem()
{
Text = s.Language,
Value = s.idLanguage.ToString()
}).ToList();
ViewBag.language = languages;
return View();
} 

在视图中:

<div class="form-group">
Html.LabelFor(m => Model.id_Language, Resource.Language)
<div class="col-sm-12 col-lg-6">
@Html.DropDownListFor(m=> m.id_Language, ViewBag.language as IEnumerable<SelectListItem>, "", new { @class = "form-control", @required = "required" })
</div>
</div>

最新更新