Heim >Backend-Entwicklung >C++ >Wie konvertiere ich eine Zeichenfolge in eine Aufzählung in C#?
In der C#wird die Zeichenfolge in die Aufzählung
Bei der Verarbeitung des HTML -Auswahl -Tags mit dem Aufzählungswert müssen Sie den ausgewählten Zeichenfolgenwert in den entsprechenden Aufzählungswert konvertieren. In C#lautet die bevorzugte Konvertierungsmethode Enum.TryParse
.
<code class="language-csharp">Enum.TryParse("Active", out StatusEnum myStatus);</code>
Für .NET Core und .NET Framework 4.0 erforderte eine längere Grammatik:
<code class="language-csharp">StatusEnum myStatus = (StatusEnum)Enum.Parse(typeof(StatusEnum), "Active", true);</code>
Aus Gründen der Bequemlichkeit können Sie eine benutzerdefinierte Erweiterungsmethode erstellen, um den Analyseprozess zu vereinfachen, wie z. B.
<code class="language-csharp">public static T ParseEnum<T>(string value) => (T)Enum.Parse(typeof(T), value, true);</code>
Mit dieser Erweiterungsmethode können Sie schreiben:
<code class="language-csharp">StatusEnum myStatus = ParseEnum<StatusEnum>("Active");</code>
Um den String -Wert zu verarbeiten, ist es kein effektiver Aufzählungswert, Sie können der ParseEnum
-Methode eine stille Erkennung hinzufügen:
<code class="language-csharp">public static T ToEnum<T>(string value, T defaultValue) { if (string.IsNullOrEmpty(value)) return defaultValue; T result; return Enum.TryParse<T>(value, true, out result) ? result : defaultValue; }</code>
Ermöglicht Ihnen die folgende Syntax:
<code class="language-csharp">StatusEnum myStatus = "Active".ToEnum(StatusEnum.None);</code>
Das obige ist der detaillierte Inhalt vonWie konvertiere ich eine Zeichenfolge in eine Aufzählung in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!