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!