是否可以在代码中的任何给定点获取具有行号的完整StackTrace对象
我找到了这个:
var stackTrace = new StackTrace();
这给了我完整的堆栈跟踪,从我执行的地方.但它不包括行号.
我也发现了这个:
var stackTrace = new StackTrace(new StackFrame(1,true));
这给了我行号,但只适用于StackTrace的一帧(不是完整的StackTrace).
有没有办法让两者结合在一起?
注意:我没有例外,我正在使用.我只是在代码中的一个点,我想以自定义方式记录堆栈跟踪.
注意:我了解Environment.Properties.StackTrace.但是返回一个字符串,而不是StackTrace对象.
解决方法
我怀疑你只想打电话给
overload taking a
bool
:
var stackTrace = new StackTrace(true);
从文档:
Parameters
fNeedFileInfo
Type:System.Boolean
true
to capture the file name,line number,and column number; otherwise,false
.