【发布时间】:2020-03-04 15:56:18
【问题描述】:
我正在尝试在从控制器传递的 asp.net 中的 View 部分中显示项目列表,如下所示:
public ActionResult Register()
{
ViewBag.Roles = new SelectList(db.Roles.ToList(),"Name","Name");
return View();
}
<div class="form-group">
@Html.LabelFor(m => m.Roles, new { @class = "col-md-2 control-label" })
<div class="col-md-10">
@Html.DropDownList("Roles",null, "Name",new { @class = "form-control" })
</div>
</div>
[Required]
[Display(Name = "Group")]
public string Roles { get; set; }
但是我得到了以下错误:
对象引用未设置为对象的实例。
说明:在执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.NullReferenceException:对象引用未设置为对象的实例。
显示这行代码时出错:
Line 143: ViewBag.Roles = new SelectList(db.Roles.ToList(),"Name","Name");
public void CreateRoles()
{
var roleManager = new RoleManager<IdentityRole>(new RoleStore<IdentityRole>(db));
IdentityRole role;
if(!roleManager.RoleExists("Admins"))
{
role = new IdentityRole();
role.Name = "Admins";
roleManager.Create(role);
}
}
有关错误的其他详细信息:
在 ASP.Identity.dll 中发生了“System.NullReferenceException”类型的异常,但未在用户代码中处理
【问题讨论】:
-
我也更新了数据库
标签: asp.net model-view-controller asp.net-identity