Heim > Backend-Entwicklung > C++ > Wie kann ich die String -Darstellung eines Enum in C# eleganter bekommen?

Wie kann ich die String -Darstellung eines Enum in C# eleganter bekommen?

Susan Sarandon
Freigeben: 2025-01-29 07:57:09
Original
274 Leute haben es durchsucht

How Can I Get the String Representation of an Enum in C# More Elegantly?

Holen Sie sich die Zeichenfolge von C#elegant

Betrachten Sie die folgende Aufzählung:

, um Stringwerte (z. B. "Formulare" anstelle von ID 1) zu erhalten, ist eine Lösung erforderlich. Obwohl die vorhandenen ordnungsgemäß basierenden Methoden und Wörterbuchmethoden eine Transformationslösung liefern, gibt es elegantere Lösungen.
public enum AuthenticationMethod
{
    FORMS = 1,
    WINDOWSAUTHENTICATION = 2,
    SINGLESIGNON = 3
}
Nach dem Login kopieren

<型> Typ Safer Aufzählungsmodus

Typ Typ Safe Enumeration -Modus type eine Versiegelungsklasse, und jedes Aufzählungsmitglied wird als separates Beispiel ausgedrückt:

Dieses Modell hat die folgenden Vorteile:

public sealed class AuthenticationMethod
{
    private readonly string name;
    private readonly int value;

    public static readonly AuthenticationMethod FORMS = new AuthenticationMethod(1, "FORMS");
    public static readonly AuthenticationMethod WINDOWSAUTHENTICATION = new AuthenticationMethod(2, "WINDOWS");
    public static readonly AuthenticationMethod SINGLESIGNON = new AuthenticationMethod(3, "SSN");

    private AuthenticationMethod(int value, string name)
    {
        this.name = name;
        this.value = value;
    }

    public override string ToString()
    {
        return name;
    }
}
Nach dem Login kopieren

Geben Sie Sicherheit Typ:

    Klasse Stellen Sie sicher, dass nur effektive Werte verwendet werden.
  • klar und präzise: Zeichenfolge zeigt direkt zu jedem Mitglied an. AuthenticationMethod
  • Skalierbarkeit:
  • kann einen Mehrwert hinzufügen, ohne den vorhandenen Code zu zerstören.
  • Unterschiedliche Konvertierung
  • Bei Bedarf können Sie der
  • -Klasse einen expliziten Typ -Konvertierung hinzufügen. Lassen Sie eine Zeichenfolge eine String in die Aufzählung umwandeln (in diesem Teil des Codebeispiels müssen Sie sie korrigieren):
):

Dies ermöglicht eine einfache Konvertierung, zum Beispiel:

Das obige ist der detaillierte Inhalt vonWie kann ich die String -Darstellung eines Enum in C# eleganter bekommen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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