Heim > Backend-Entwicklung > C++ > Wie erhalte ich Anzeigenamen von Enum-Mitgliedern in ASP.NET MVC Razor-Ansichten?

Wie erhalte ich Anzeigenamen von Enum-Mitgliedern in ASP.NET MVC Razor-Ansichten?

Mary-Kate Olsen
Freigeben: 2025-01-27 09:11:13
Original
393 Leute haben es durchsucht

How to Get Display Names of Enum Members in ASP.NET MVC Razor Views?

Anzeigen von Enum-Mitgliedsnamen in ASP.NET MVC Razor-Ansichten

Beim Arbeiten mit Enumerationen, die durch Anzeigeattribute in ASP.NET MVC Razor-Ansichten erweitert wurden, ist der effiziente Zugriff auf diese Anzeigenamen für die Erstellung benutzerfreundlicher Schnittstellen von entscheidender Bedeutung. Dieser Artikel stellt eine Lösung vor, um dies zu erreichen.

Die Herausforderung besteht darin, die Anzeigenamen von Enum-Mitgliedern basierend auf ihren Flag-Werten abzurufen. Ein gängiger Ansatz ist die Reflexion. Die folgende Erweiterungsmethode GetAttribute() erleichtert dies:

<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>
Nach dem Login kopieren

Diese Methode ruft dynamisch alle Attribute ab, die einem Enumerationsmitglied zugeordnet sind.

Wenn Sie dies auf Ihre Razor-Ansicht anwenden, würde der verbesserte Code so aussehen:

<code class="language-csharp">@foreach (var aPromotion in Enum.GetValues(typeof(UserPromotion)))
{
    var currentPromotion = (int)Model.JobSeeker.Promotion;
    if ((currentPromotion & aPromotion) == aPromotion)
    {
        @aPromotion.GetAttribute<DisplayAttribute>().Name
    }
}</code>
Nach dem Login kopieren

Dieser überarbeitete Razor-Code nutzt die GetAttribute()-Methode, um den DisplayAttribute für jedes Enum-Mitglied in der Schleife zu erhalten. Die Name-Eigenschaft des abgerufenen Attributs stellt dann den gewünschten Anzeigenamen bereit. Dieser Ansatz stellt sicher, dass benutzerfreundliche Namen anstelle der zugrunde liegenden Enum-Werte angezeigt werden.

Das obige ist der detaillierte Inhalt vonWie erhalte ich Anzeigenamen von Enum-Mitgliedern in ASP.NET MVC Razor-Ansichten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage