ホームページ >バックエンド開発 >C++ >C# で説明を使用して列挙値を取得するにはどうすればよいですか?

C# で説明を使用して列挙値を取得するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-21 21:21:10360ブラウズ

How Can I Retrieve an Enum Value Using Its Description in C#?

C# 列挙型の拡張: 説明による値の取得

この記事では、C# 列挙型の機能を向上させる強力なテクニックを紹介します。 ここでは、description 属性を使用して enum 値を効率的に取得することに焦点を当てます。 このアプローチにより、柔軟性が向上し、コード開発が簡素化されます。

この解決策には、ジェネリック メソッド EnumEx を含む静的ヘルパー クラス GetValueFromDescription が含まれます。このメソッドは、説明文字列と列挙型を入力として受け入れます。 次に、リフレクションを使用して DescriptionAttribute を見つけて、列挙型のフィールドを反復処理します。属性の説明と入力文字列の間で一致が見つかった場合は、対応する列挙値が返されます。

DescriptionAttribute が存在しない場合、メソッドはフィールド名と入力説明の比較に戻ります。 ここで一致が見つかった場合は、対応する列挙値が返されます。 それ以外の場合は、ArgumentException がスローされます (または、実装の設定に応じて、デフォルトの列挙値が返されます)。

このメソッドでは、説明を使用して列挙値を簡単に取得できます。

<code class="language-csharp">var panda = EnumEx.GetValueFromDescription<animal>("Giant Panda");</code>

この拡張機能は、説明に基づいて列挙値にアクセスするよりクリーンな方法を提供することで、コードの保守性と読みやすさを大幅に向上させます。

以上がC# で説明を使用して列挙値を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。