Maison > développement back-end > C++ > Comment remplir une aide à tag de sélection dans ASP.NET Core MVC avec les données des employés?

Comment remplir une aide à tag de sélection dans ASP.NET Core MVC avec les données des employés?

Linda Hamilton
Libérer: 2025-01-28 21:11:11
original
352 Les gens l'ont consulté

How to Populate a Select Tag Helper in ASP.NET Core MVC with Employee Data?

ASP.NET CORE MVC SELECT TAG HELPER: remplissage avec les données des employés

Ce guide montre comment remplir un élément HTML <select> à l'aide de l'assistance ASP.NET Core Select Tag, affichant dynamiquement les noms des employés tout en stockant leurs ID comme valeurs.

1. Création du modèle:

Tout d'abord, définissez un modèle de vue pour contenir la liste des employés:

<code class="language-csharp">public class EmployeeViewModel
{
    public int SelectedEmployeeId { get; set; } // For storing the selected ID
    public string Comments { get; set; }
    public List<Employee> Employees { get; set; }
}</code>
Copier après la connexion

et la classe Employee:

<code class="language-csharp">public class Employee
{
    public int Id { get; set; }
    public string FullName { get; set; }
}</code>
Copier après la connexion

2. Sélectionnez Implémentation de Tag Helper:

Dans votre vue, utilisez l'assistance de sélection:

Méthode 1: Utilisation de SelectList:

<code class="language-html">@model EmployeeViewModel

<select asp-for="SelectedEmployeeId" asp-items="@new SelectList(Model.Employees, nameof(Employee.Id), nameof(Employee.FullName))">
    <option value="">Select Employee</option> </select></code>
Copier après la connexion

Cela crée une liste déroulante avec une option par défaut "Sélectionner un employé". asp-for lie la valeur sélectionnée à la propriété SelectedEmployeeId dans votre modèle de vue. Le constructeur SelectList prend la liste des employés, le nom de la propriété ID et le nom de la propriété du nom complet.

Méthode 2: Utilisation IEnumerable<SelectListItem>:

Pour plus de contrôle, créez SelectListItem objets:

<code class="language-html">@model EmployeeViewModel

<select asp-for="SelectedEmployeeId">
    <option value="">Select Employee</option>
    @foreach (var employee in Model.Employees)
    {
        <option value="@employee.Id">@employee.FullName</option>
    }
</select></code>
Copier après la connexion

Cela offre plus de flexibilité si vous avez besoin de personnaliser des options au-delà du nom simple et de l'ID.

3. Population de données (contrôleur):

Dans votre action de contrôleur, remplissez le EmployeeViewModel:

<code class="language-csharp">public IActionResult MyAction()
{
    var employees = new List<Employee>
    {
        new Employee { Id = 1, FullName = "Shyju" },
        new Employee { Id = 2, FullName = "Bryan" }
    };

    var viewModel = new EmployeeViewModel
    {
        Employees = employees
    };

    return View(viewModel);
}</code>
Copier après la connexion

Cet exemple crée une liste codée en dur; Remplacez cela par votre logique de récupération de base de données.

4. Considérations importantes:

  • Gestion des erreurs: Implémentez la gestion des erreurs appropriée pour les interactions de base de données.
  • liaison des données: Assurer la liaison correcte des données entre la vue et le modèle de vue.
  • Option par défaut: Incluez toujours une option par défaut ("Sélectionnez un employé" dans cet exemple) pour une meilleure expérience utilisateur.
  • Source de données: Remplacez les exemples de données d'employé par votre source de données réelle (base de données, API, etc.).

Cette approche complète fournit un moyen robuste et efficace de remplir votre assistant de tag de sélection avec les données des employés dans ASP.NET Core MVC. N'oubliez pas d'adapter le code à votre modèle de données et à vos actions de contrôleur spécifiques.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal