我可以构建我的选择列表并在视图中的Select taghelper中呈现它。 但我无法设置默认选择。
我在AdminAccountController中构建我的ViewModel和SelectList:
public PartialViewResult CreateUser()
{
SelectList rolesList = new SelectList(_roleManager.Roles, "User");
return PartialView("_CreateUser", new CreateUserViewModel
{
RolesList = rolesList
});
}
CreateUserViewModel如下所示:
public class CreateUserViewModel
{
public string NameSource { get; set; }
[Required]
public string Name { get; set; }
[Required]
public string Email { get; set; }
[Required]
public string Password { get; set; } = "Password";
public IdentityRole Role { get; set; }
public SelectList RolesList { get; set; }
}
RoleManager来自构造函数。 我的视图在这里使用SelectList:
<select asp-for="Role.Name" asp-items="Model.RolesList"
class="form form-control">
</select>
在控制器中使用此行PartialViewResult CreateUser() 动作:
SelectList rolesList = new SelectList(_roleManager.Roles, "User");
不应该是第二个参数,&#34;用户&#34;,将默认选择选项设置为...&#34;用户&#34;?
没有效果。我该如何设置?
答案 0 :(得分:0)
我明白了:
SelectList rolesList =
new SelectList(_roleManager.Roles.OrderBy(r => r.Name), _roleManager.Roles.SingleOrDefault(s => s.Name == "User"));