【问题标题】:Why does AspNetCore SelectList selectedValue parameter not work?为什么 AspNetCore SelectList selectedValue 参数不起作用?
【发布时间】:2017-03-16 00:21:39
【问题描述】:

我能够构建我的选择列表并将其呈现在视图中的 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");

第二个参数“User”不应该将默认选择选项设置为...“User”吗?

没有效果。我该如何设置?

【问题讨论】:

    标签: asp.net-core-mvc tag-helpers


    【解决方案1】:

    我明白了:

    SelectList rolesList =
                new SelectList(_roleManager.Roles.OrderBy(r => r.Name), _roleManager.Roles.SingleOrDefault(s => s.Name == "User"));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多