C# での文字列と列挙型の関連付け
列挙型の固有の整数の性質のため、文字列値を使用した列挙型の作成は C# では直接サポートされていません。ただし、同様の機能を実現する代替オプションがいくつかあります。
クラス内のプロパティ:
1 つのアプローチは、クラス内のプロパティを利用することです。プロパティは列挙型に似ていますが、文字列値を柔軟に使用できます。たとえば、次のクラスについて考えてみましょう:
public class LogCategory { private LogCategory(string value) { Value = value; } public string Value { get; private set; } public static LogCategory Trace { get { return new LogCategory("Trace"); } } public static LogCategory Debug { get { return new LogCategory("Debug"); } } ... }
タイプ セーフな文字列パラメータ:
もう 1 つのオプションは、タイプ セーフな文字列値をパラメータとしてメソッドに渡すことです。これにより、コードの可読性と安全性が確保されます。例:
public static void Write(string message, LogCategory logCategory) { var log = new LogEntry { Message = message }; Logger.Write(log, logCategory.Value); }
使用法:
どちらのアプローチでも直感的で読みやすい使用法が可能です:
Logger.Write("This is almost like an enum.", LogCategory.Info);
以上がC# で文字列を列挙型に関連付けるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。