Remplir Razor DropDownList avec une liste
Dans ce scénario, nous avons un modèle contenant un List
Pour remplir une liste déroulante, un modèle de vue (UserRoleViewModel) peut être introduit pour séparer la logique métier et simplifier la vue. Ce modèle de vue comprend SelectedUserRoleId pour la sélection des utilisateurs et une liste (UserRoles) pour les éléments déroulants.
Contrôleur :
View :
Exemple :
Viewmodel :
public class UserRoleViewModel { [Display(Name = "User Role")] public int SelectedUserRoleId { get; set; } public IEnumerable<SelectListItem> UserRoles { get; set; } }
Contrôleur :
private IEnumerable<SelectListItem> GetRoles() { var dbUserRoles = new DbUserRoles(); var roles = dbUserRoles .GetRoles() .Select(x => new SelectListItem { Value = x.UserRoleId.ToString(), Text = x.UserRole }); return new SelectList(roles, "Value", "Text"); } public ActionResult AddNewUser() { var model = new UserRoleViewModel { UserRoles = GetRoles() }; return View(model); }
Afficher :
@model UserRoleViewModel @Html.LabelFor(m => m.SelectedUserRoleId) @Html.DropDownListFor(m => m.SelectedUserRoleId, Model.UserRoles)
Ceci L'approche donne lieu à une liste déroulante remplie avec les valeurs de la liste DbUserRoles.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!