如何在.net运行时中跟踪代码
我想在我的项目中进行性能监控,我不想在每个函数中添加跟踪代码 我想做(自动跟踪):如何在.net运行时中跟踪代码,.net,trace,.net,Trace,我想在我的项目中进行性能监控,我不想在每个函数中添加跟踪代码 我想做(自动跟踪): 那么,我该怎么办,谢谢你 这不是C#自己可以做到的(在方法的开头和结尾运行指定的代码,而不是手动编写这些代码行),除非您使用re-compiler/weaver,也称为面向方面编程。这通常是通过第三方工具完成的。如果将方法体包装在using语句中,其中相关代码在构造函数和dispose语句中运行,则可以将boiler板压缩为1行代码和2个backets。谢谢MatthewMartin,“dottrace”等第三方
那么,我该怎么办,谢谢你 这不是C#自己可以做到的(在方法的开头和结尾运行指定的代码,而不是手动编写这些代码行),除非您使用re-compiler/weaver,也称为面向方面编程。这通常是通过第三方工具完成的。如果将方法体包装在using语句中,其中相关代码在构造函数和dispose语句中运行,则可以将boiler板压缩为1行代码和2个backets。谢谢MatthewMartin,“dottrace”等第三方工具是否使用钩子或其他工具?
public class ManagerBase
{
public void Trace()
{
//trace begin
DoSth();
//trace end
//i want get stacktrace in Manager.DoSth and every method's execution time
}
protected virtual void DoSth(){}
}
public class Manager : ManagerBase
{
protected override void DoSth()
{
Function1();
Function2();
Function3();
}
private void Function1() { }
private void Function2() { }
private void Function3() { }
}