C# System.Diagnostics.StackTrace或System.Diagnostics.StackFrame是否用于调试?为什么?
这个代码是:C# System.Diagnostics.StackTrace或System.Diagnostics.StackFrame是否用于调试?为什么?,c#,debugging,logging,error-handling,C#,Debugging,Logging,Error Handling,这个代码是: System.Diagnostics.StackFrame stackFrame = new System.Diagnostics.StackFrame(); System.Reflection.MethodBase methodBase = stackFrame.GetMethod(); stackFrame.GetFileName(); stackFrame.GetFileLineNumber(); 与使用System.Diagnostics.StackTrace进行调试相比
System.Diagnostics.StackFrame stackFrame = new System.Diagnostics.StackFrame();
System.Reflection.MethodBase methodBase = stackFrame.GetMethod();
stackFrame.GetFileName();
stackFrame.GetFileLineNumber();
与使用System.Diagnostics.StackTrace进行调试相比,StackTrace更好地在内部使用StackFrame,默认构造函数将为您解决这一问题,并设置列号 我会坚持使用StackTrace,除非您需要有限数量的帧或减少堆栈跟踪(可能是出于性能原因)