asp.net-mvc - 无法从实体框架填充 ASP.NET MVC 5 中的下拉列表
问题描述
我正在尝试在 ASP.NET MVC 5 中填充下拉列表,但没有成功。
控制器:
[AllowAnonymous]
[HttpGet]
public ActionResult PartialRegistrationRoles()
{
using (DBModels db = new DBModels())
{
List<Role> allRoles = db.Roles.ToList();
var roles = new SelectList(db.Roles.ToList(),"RoleName");
ViewData["DBRoles"] = roles.Items;
}
return View();
}
部分观点:
@using System.Collections
@using WorkFinder.Models
@model WorkFinder.Models.Role
<div class="form-group">
@Html.DropDownList("Roles", new SelectList((IEnumerable)
ViewData["DBRoles"]),"Roleid","RoleName")
</div>
实际下拉列表:
下拉列表只是检索一些 SYSTEM.DATA.ENTITY...
浏览主视图时出错,但是,下拉菜单显示在部分视图中:
谁能帮我理解我做错了什么?
谢谢!
解决方案
首先,看一下DropDownList和SelectList的重载方法。很可能您放错了支架并打算执行以下操作:
@Html.DropDownList("Roles", new SelectList((IEnumerable)ViewData["DBRoles"],"Roleid","RoleName"))
将此称为局部视图,请显示相关代码(主视图),我将更新答案。
推荐阅读
- google-analytics - 我可以用 gtag() 替换 dataLayer.push() 吗?
- mysql - 如何在以下条件下将图像从 react 上传到 dot net mysql 服务器端点?
- android - 使用 mdm 在 chromebook 中安装后如何启动 android 应用程序
- c - 使用 unix 打印用户上次登录时间
- error-handling - 如何知道 Teradata 数据库中是否发生了触发器失败或回滚?
- semantic-versioning - 配置语义发布以通过 CLI 发布预发布
- ruby - 为什么捆绑器不使用系统宝石?
- python - Python Flask 服务未并行执行所有函数调用
- oop - 图像处理过滤器的设计模式或最佳方法
- android-studio - 如何将android studio中的安装类型从标准更改为自定义?