607 Stimmen

Enum String Name von Wert

Ich habe ein Enum-Konstrukt wie dieses:

public enum EnumDisplayStatus
{
    None    = 1,
    Visible = 2,
    Hidden  = 3,
    MarkedForDeletion = 4
}

In meiner Datenbank werden die Aufzählungen nach Wert referenziert. Meine Frage ist, wie kann ich die Zahlendarstellung der Aufzählung wieder in den Stringnamen umwandeln.

Zum Beispiel, wenn 2 das Ergebnis sollte sein Visible .

6voto

Biddut Punkte 379

Ich habe den folgenden Code verwendet

 CustomerType = ((EnumCustomerType)(cus.CustomerType)).ToString()

5voto

Muhammad Aqib Punkte 631

Um den String-Wert [Name] zu erhalten:

EnumDisplayStatus enumDisplayStatus = (EnumDisplayStatus)GetDBValue();
string stringValue = $"{enumDisplayStatus:G}"; 

Und um den Enum-Wert zu erhalten:

string stringValue = $"{enumDisplayStatus:D}";
SetDBValue(Convert.ToInt32(stringValue ));

0 Stimmen

Warum nicht einfach .ToString()? 'Facepalm'

4voto

lacop Punkte 1944

Einfach den int in den Aufzählungstyp umwandeln:

EnumDisplayStatus status = (EnumDisplayStatus) statusFromDatabase;
string statusString = status.ToString();

1voto

Biddut Punkte 379

Das können Sie versuchen

string stringValue=( (MyEnum)(MyEnum.CSV)).ToString();

1 Stimmen

Die Besetzung ist überflüssig

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X