以编程方式获取C#堆栈跟踪
可能重复:
如何在.NET中打印当前的堆栈跟踪,没有任何exception?
当引发exception时,其文本包含堆栈跟踪。 我可以以某种方式获得堆栈跟踪文本(包括文件和行)没有例外?
public void f() { //blah string stacktrace = ???; //blah }
Environment.StackTrace或System.Diagnostics.StackTrace,如果你需要一个更方便(即不是string)表示
是…
StackTrace stackTrace = new StackTrace(); // get call stack StackFrame[] stackFrames = stackTrace.GetFrames()
string stackTrace = Environment.StackTrace;