来电者信息属性
调用者信息属性可用于将有关调用者的信息传递给调用的方法。声明如下:
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
方法声明的完整路径。