Maison > développement back-end > C++ > Comment puis-je accéder aux noms d'affichage Enum à l'aide de la syntaxe Razor dans ASP.NET MVC ?

Comment puis-je accéder aux noms d'affichage Enum à l'aide de la syntaxe Razor dans ASP.NET MVC ?

DDD
Libérer: 2025-01-27 09:21:09
original
900 Les gens l'ont consulté

How Can I Access Enum Display Names Using Razor Syntax in ASP.NET MVC?

Exploitation des noms d'affichage pour une présentation Enum améliorée dans les vues Razor ASP.NET MVC

L'utilisation de l'attribut [Display] pour enrichir les membres de l'énumération permet une présentation plus propre et plus conviviale des valeurs de l'énumération dans les vues Razor. Cette approche simplifie l'affichage des données d'énumération sélectionnées.

Utilisation de méthodes d'extension pour la récupération d'attributs

L'accès au nom d'affichage directement dans Razor nécessite une méthode d'extension personnalisée. Cette méthode d'extension générique récupère tout attribut appliqué à une énumération :

<code class="language-csharp">public static TAttribute GetAttribute<TAttribute>(this Enum enumValue)
    where TAttribute : Attribute
{
    return enumValue.GetType()
                    .GetMember(enumValue.ToString())
                    .First()
                    .GetCustomAttribute<TAttribute>();
}</code>
Copier après la connexion

Implémentation de l'extension dans les vues Razor

Cette extension simplifie l'accès à l'attribut d'affichage dans vos vues Razor :

<code class="language-csharp">@foreach (int aPromotion in Enum.GetValues(typeof(UserPromotion)))
{
    var currentPromotion = (int)Model.JobSeeker.Promotion;
    if ((currentPromotion & aPromotion) == aPromotion)
    {
        var displayAttribute = currentPromotion.GetAttribute<DisplayAttribute>();
        <li>@displayAttribute?.GetName()</li>  
    }
}</code>
Copier après la connexion

Ce code parcourt les valeurs d'énumération, identifie les correspondances avec la propriété du modèle et utilise l'extension pour récupérer le nom d'affichage. @displayAttribute?.GetName() gère en toute sécurité les valeurs nulles et accède au nom d'affichage.

Cette méthode d'extension fournit un moyen simplifié d'accéder et d'afficher les noms d'affichage d'énumération dans les vues Razor, améliorant ainsi la clarté et l'expérience utilisateur de vos applications ASP.NET MVC.

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!

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal