{ //获取调用者的Type类型,然后想怎么玩怎么玩. var type = sender.GetType();} --参... DOC100.NET版权所有. 最新更新 Doc100.Net,为您提供优质的归类信息服务!联系我...
从C#5.0开始,可以给可选参数添加3个调用者信息属性,用以获取调用者的信息,包括调用者成员名、调用者源代码文件路径、调用者源代码文件的行号,具体如下:
![.Net获取调用者信息](http://www.xielw.cn/pic/?p=http://e.hiphotos.xielw.cn/exp/w=500/sign=5b59b51541a7d933bfa8e4739d4ad194/dbb44aed2e738bd4e7f63d30a28b87d6267ff9d8.jpg)
工具/原料
- Visual Studio 2013(其他版本亦可)
- C#5.0(.Net 4.5)
方法/步骤
- 1
启动VS,新建控制台应用程序,命名为CallerTest,如下图:
步骤阅读
- 2
在Program.cs文件中添加如下代码:
static void Main(string[] args)
{
PrintCaller();
Console.ReadLine();
}
static void PrintCaller(
[CallerMemberName] string callerMemberName = null,
[CallerFilePath] string callerFilePath = null,
[CallerLineNumber] int callerLineNumber = 0)
{
Console.WriteLine("调用者:" + callerMemberName);
Console.WriteLine("源文件:" + callerFilePath);
Console.WriteLine("行号:" + callerLineNumber);
}
步骤阅读
- 3
调试运行,查看结果:
步骤阅读END
总结
- 1
在可选参数前添加[CallerMemberName]、[CallerFilePath]、[CallerLineNumber]分别标识该参数是调用者名称、调用者源文件以及所在的行号,这些参数还可以像普通参数那样进行赋值,如PrintCaller("PrintCaller","",10)。
步骤阅读
- 2
要使用调用者信息属性,需要添加名称空间引用:System.Runtime.CompilerServices;
步骤阅读
- 3
调用者信息属性通常用于记录日志,还可以用于通知接口以省略属性名的输入,避免人工错误。
END
.Net获取调用者信息,从C#5.0开始,可以给可选参数添加3个调用者信息属性,用以获取调用者的信息,包括调用者成员名、调用者源代码文件路径、调用者源代码文件的行号,具...
everythingudo 等级: 结帖率:90.91% 楼主 比如 public class A { public static void Test(这里怎么获取调用该方法的类信息?,比如下面的B } } public class B { public void New() { A....
近期编写一个日志代码.需要定位类,方法.查了一些资料后写了下面这个方法.在类的初始化时得到了方法的调用者信息。import org.apache.log4j.Logger;/** *//** * 系统日志记录类....