Die beste Praxis der Zeichenfolge zur Aufzählungsumwandlung in der Aufzählung
In der C# -Entwicklung ist die Konvertierung von String in den Aufzählungswert eine gemeinsame Aufgabe. In diesem Artikel wird der effektivste Weg untersucht, um diese Konvertierung zu erreichen.
Found TryParse -Methode
Ausgehend von .NET Core und .NET Framework ≥4.0 können Sie die genealistische Methode verwenden, um die Aufzählung aufzulösen:
Diese Methode versucht nicht nur, die Zeichenfolge als Aufzählungswert zu beheben, sondern umzuwandeln sie auch in einen expliziten Aufzählungstyp und weist ihn der Mystatus -Variablen zu.
<code class="language-csharp">Enum.TryParse("Active", out StatusEnum myStatus);</code>
Für die ältere Version des .NET -Frameworks kann die benutzerdefinierte Erweiterungsmethode den Analyseprozess vereinfachen:
wie man verwendet:oder Sie können die ZENUM -Erweiterungsmethode verwenden:
<code class="language-csharp">public static T ParseEnum<T>(string value) { return (T)Enum.Parse(typeof(T), value, true); }</code>
Verarbeitung des Standardwerts
<code class="language-csharp">StatusEnum MyStatus = EnumUtil.ParseEnum<StatusEnum>("Active");</code>
Um den Standard -Aufzählungswert bei Ausfall der Konvertierung anzugeben, können Sie die Erweiterungsmethode mit dem Standardparameter verwenden:
<code class="language-csharp">public static T ToEnum<T>(this string value) { return (T)Enum.Parse(typeof(T), value, true); } StatusEnum MyStatus = "Active".ToEnum<StatusEnum>();</code>
wie man verwendet:
Vorsichtsmaßnahmen
<code class="language-csharp">public static T ToEnum<T>(this string value, T defaultValue) { if (string.IsNullOrEmpty(value)) { return defaultValue; } T result; return Enum.TryParse<T>(value, true, out result) ? result : defaultValue; }</code>
Das obige ist der detaillierte Inhalt vonWie kann man Strings effizient in C#in Enums konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!