呼び出し元情報の取得

メソッドの引数にCallerMemberName属性を付与することで

メソッド呼び出し元のメソッド名またはプロパティ名を取得できる。

また、CallerFilePath属性を付与することで、呼び出し元のC#ファイル名を

CallerLineNumber属性を付与することで、呼び出し元の行番号を取得できる。

 

private string _testProperty;
public string TestProperty
{
 get => _testProperty;
 set
 {
  Test(value);
 }
}
public void testMethod()
{
 Test(nameof(testMethod));
}
public void Test(string value,[CallerMemberName]string methodName= null)
{
 _testProperty = value;
 System.Diagnostics.Debug.WriteLine($"methodname={methodName} value={value}" );
}

-----------------------------------------------------

testMethod();
TestProperty = "プロパティ";

-----------------------------------------------------

■実行結果

methodname=testMethod value=testMethod
methodname=TestProperty value=プロパティ