ここでは、クラス名やメソッド名を取得する2通りの方法を掲載しています。1つ目はリフレクションを用いた方法で、2つ目は、Visual Studio 2015 (C# 6.0 ) で利用可能になった nemeof 演算子を用いる方法です。
スポンサーリンク
クラス名、メソッド名を取得するサンプル
ネームスペース、クラス名、メソッド名を取得するサンプルコードになります。詳細はコメントを参照ください。
using System.Reflection;
namespace WindowsFormsApplication17
{
public partial class Form1 : Form
{
private void button1_Click(object sender, EventArgs e)
{
// ネームスペース
string nameSpace = this.GetType().Namespace;
// クラス名
string className = this.GetType().Name;
// ネームスペース+クラス名
//string className = this.GetType().FullName;
// メソッド名 using System.Reflection が必要
string methodName = MethodBase.GetCurrentMethod().Name;
// WindowsFormsApplication17 : Form1 : button1_Click
Console.WriteLine("{0} : {1} : {2}", nameSpace, className, methodName);
// ネームスペース
nameSpace = nameof(WindowsFormsApplication17);
// クラス名
className = nameof(Form1);
// メソッド名
methodName = nameof(button1_Click);
// WindowsFormsApplication17 : Form1 : button1_Click
Console.WriteLine("{0} : {1} : {2}", nameSpace, className, methodName);
}
}
}