是否可以在代码中的任何给定点获得完整的StackTrace
对象 WITH 行号
我发现了这个:
var stackTrace = new StackTrace();
这给了我完整的堆栈跟踪,从我执行的地方。但它不包括行号。
我也发现了这个:
var stackTrace = new StackTrace(new StackFrame(1, true));
这给了我行号,但仅限于StackTrace的一帧(不是完整的StackTrace)。
有没有办法让两者结合在一起?
注意:我没有与我合作的例外情况。我只是在代码中的一个点,我想以自定义方式记录堆栈跟踪。
注意:我了解Environment.Properties.StackTrace。但是返回一个字符串,而不是StackTrace
个对象。
答案 0 :(得分:9)
我怀疑你只想打电话给overload taking a bool
:
var stackTrace = new StackTrace(true);
来自文档:
参数
fNeedFileInfo
输入:System.Boolean
true
捕获文件名,行号和列号;否则,false
。