2017-03-16 35 views
0

我能夠建立我的選擇列表並將其呈現在視圖中的Select taghelper中。 但我無法設置默認選擇。爲什麼AspNetCore SelectList的selectedValue參數不起作用?

我在這裏建立我的ViewModel和的SelectList在AdminAccountController:

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"); 

不應該第二個參數, 「用戶」,設置默認選擇選項以...「用戶」?

它沒有效果。我該如何設置?

回答

0

我懂了:

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