C#基本

[C#] クラスやメソッドから文字列で名称を取得する(nameof)

クラスやメソッドから、そのクラス名やメソッド名を文字列で取得するには、
nameof() を使用します。

サンプル

例)クラス、メソッド、変数から名称を文字列で取得する


//DateTimeらクラス名を取得する
string a = nameof(DateTime);

//DateTime.Nowからメソッド名を取得する
string b = nameof(DateTime.Now);

//変数valの変数名を取得する
int val = 100;
string c = nameof(val);

Console.WriteLine(a);
Console.WriteLine(b);
Console.WriteLine(c);

結果

DateTime
Now
val

備考

  • nameofは、C#6.0以降のバージョンで使用できます。
  • 存在しないクラスやメソッドをnameofに指定した場合はコンパイルエラーとなるため、
    タイプミスなどを防ぐことができます。

-C#基本
-