ホームページ > バックエンド開発 > C++ > 文字列をC#の酵素に効率的に変換するにはどうすればよいですか?

文字列をC#の酵素に効率的に変換するにはどうすればよいですか?

Patricia Arquette
リリース: 2025-02-02 00:36:17
オリジナル
534 人が閲覧しました

How to Efficiently Convert Strings to Enums in C#?

列挙における列挙変換への文字列のベストプラクティ

C#開発では、文字列を列挙値に変換することは一般的なタスクです。この記事では、この変換を実現するための最も効果的な方法を探ります。 tryparse Method

が見つかりました .NET Coreおよび.NETFramework≥4.0から始まると、GeneAlist Methodを使用して列挙を解決できます。

このメソッドは、文字列を列挙値として解決しようとするだけでなく、明示的な列挙タイプに変換し、MyStatus変数に割り当てます。 parseeedextension/toenumextexsion拡張方法

.NETフレームワークの古いバージョンの場合、カスタム拡張方法は分析プロセスを簡素化できます。
<code class="language-csharp">Enum.TryParse("Active", out StatusEnum myStatus);</code>
ログイン後にコピー

の使用方法:

または、Toenum Extensionメソッドを使用できます。 デフォルト値の処理

変換が失敗したときにデフォルトの列挙値を指定するために、デフォルトのパラメーターで拡張方法を使用できます:
<code class="language-csharp">public static T ParseEnum<T>(string value)
{
    return (T)Enum.Parse(typeof(T), value, true);
}</code>
ログイン後にコピー

の使用方法:
<code class="language-csharp">StatusEnum MyStatus = EnumUtil.ParseEnum<StatusEnum>("Active");</code>
ログイン後にコピー

予防策

<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>
ログイン後にコピー

ToenumのようなString Clauseクラスの拡張は便利に見えますが、コアカテゴリの完全性を維持し、他の拡張機能を使用したり、コンテキスト需要の競合を避けたりすることが重要です。したがって、カスタムenum変換方法のための専用のクラスまたは名前スペースを作成することをお勧めします。

以上が文字列をC#の酵素に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート