2017-03-16 12 views
0

私は選択リストを構築し、それをビュー内の選択タグヘルパーにレンダリングすることができます。 しかし、私はデフォルトの選択を設定できません。AspNetCore SelectList selectedValueパラメータが機能しないのはなぜですか?

私はここ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"); 

2番目のパラメータはなく、 "ユーザー"、デフォルトを設定しますオプションを選択... "ユーザー"?

効果はありません。どうすれば設定できますか?

答えて

0

私はそれを得た:

SelectList rolesList = 
      new SelectList(_roleManager.Roles.OrderBy(r => r.Name), _roleManager.Roles.SingleOrDefault(s => s.Name == "User")); 
関連する問題