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
DDDoriginal
2025-01-27 09:21:09907parcourir

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>

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>

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:
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