可能重复:
How to print the current Stack Trace in .NET without any exception?
抛出异常时,其文本包含堆栈跟踪。我可以以某种方式获得堆栈跟踪文本(包括文件和行)没有例外吗?
public void f()
{
//blah
string stacktrace = ???;
//blah
}
答案 0 :(得分:73)
Environment.StackTrace或System.Diagnostics.StackTrace如果您需要更方便(即不是字符串)的表示
答案 1 :(得分:18)
是......
StackTrace stackTrace = new StackTrace(); // get call stack
StackFrame[] stackFrames = stackTrace.GetFrames()
答案 2 :(得分:14)
string stackTrace = Environment.StackTrace;