来电者信息属性
调用者信息属性可用于将有关调用者的信息传递给调用的方法。声明如下:
using System.Runtime.CompilerServices;
public void LogException(Exception ex,
[CallerMemberName]string callerMemberName = "",
[CallerLineNumber]int callerLineNumber = 0,
[CallerFilePath]string callerFilePath = "")
{
//perform logging
}
调用看起来像这样:
public void Save(DBContext context)
{
try
{
context.SaveChanges();
}
catch (Exception ex)
{
LogException(ex);
}
}
请注意,只有第一个参数显式传递给 LogException 方法,而其余参数将在编译时提供相关值。
callerMemberName 参数将接收值 Save - 调用方法的名称。
callerLineNumber 参数将接收 LogException 方法调用所写的任何行的编号。
并且’callerFilePath’参数将接收文件 Save 方法声明的完整路径。