c# - 没有类型为 'IEnumerable<SelectListItem>' 且键为 '......' 的 ViewData 项

标签 c# html asp.net-mvc razor

Controller

DepartmentLevel departmentlevel = new DepartmentLevel();
ViewBag.DepartmentLevel = 
    new SelectList(db.DepartmentLevels, "DepartmentLevelId", "DepartmentLevelDesc",
    departmentlevel.DepartmentLevelId).OrderBy(a => a.Text);

HTML

@Html.DropDownList("DepartmentLevel", ViewData["DepartmentLevel"] as SelectList,
                   "All Department", new { @style = "width:200px;" })

问题是什么?

最佳答案

您在 Controller 中使用了 ViewBag 而不是 ViewData。因此,您也应该在 View 中使用 ViewBag,如下所示:

@Html.DropDownList("DepartmentLevel", ViewBag.DepartmentLevel as SelectList,
                   "All Department", new { @style = "width:200px;" })

关于c# - 没有类型为 'IEnumerable<SelectListItem>' 且键为 '......' 的 ViewData 项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40417697/

相关文章:

javascript - 选中复选框上的图像和文本更改并还原

html - 如何将div垂直展开到窗口大小并垂直居中?

java - 哪个基于 Java 的 MVC 框架与 ASP.NET MVC 最相似?

c# - 跟踪分配的对象分配

c# - Microsoft Visual C++ 2008 Redistributable Package - 它包含哪些文件?

c# - 如何在 app.config 中注册命名空间

c# - 如何在 C# 中获取 .gif 文件的持续时间?

javascript - ng-class 的 css 过渡效果

c# - MVC + 我如何在 Controller 操作之前提醒提示用户

c# - mvc 应用程序中的表单例份验证,使用外部服务进行身份验证