現在のコードが実行されているメソッドまたはプロパティの名前をプログラムで取得する方法はありますか?
void Test()
{
MessageBox.Show("This is a message from " + GetNameOfCurrentMethod);
}
例外をスローし、それをキャッチしてスタックトレースを解析することを考えましたが、これを行うためのより良い方法があるはずです。
現在のコードが実行されているメソッドまたはプロパティの名前をプログラムで取得する方法はありますか?
void Test()
{
MessageBox.Show("This is a message from " + GetNameOfCurrentMethod);
}
例外をスローし、それをキャッチしてスタックトレースを解析することを考えましたが、これを行うためのより良い方法があるはずです。
試す:
MethodInfo.GetCurrentMethod().Name
System.Reflection.MethodBase.GetCurrentMethod().Name;
検索しましたか?C#コードから現在のメソッドの名前を取得する方法
現在は関係ありませんが、将来の読者のために、.NET 4.5 ではCallerMemberNameAttribute
、呼び出し元情報を取得するためにオプションのメソッド パラメーターに適用できる が導入されています (ただし、ベータ版から RTM に削除されない場合に限ります!)。http://msdn.microsoft.com/en-us/library/hh534540(v=vs.110).aspx