c# - 保存调用栈

标签 c# debugging

<分区>

简短版本:有没有办法以某种方式保存当前调用堆栈并存储它供以后使用?

上下文:这个问题似乎很常见,我可能只是错过了正确的搜索词。

某个类需要从服务器读取一个变量。我只是使用 API 将请求发送到服务器,在未来的某个时候,一个单独的线程将获得回复并在原始调用者类上调用一些后续方法。

很简单,但可能会出现错误:我尝试获取的变量不存在、类型不正确或其他原因。在那些情况下,我可以输出到调试日志的最好结果可能是:“无法找到变量 X”和工作人员的堆栈跟踪。我真正想要的是原始调用者的堆栈跟踪,我可以将其存储在某个地方并打印出来,以防出现错误,这样我就可以缩小问题范围,而不必寻找它是哪个调用者。

最佳答案

Environment.StackTrace 将为您提供当前堆栈跟踪。

关于c# - 保存调用栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55243821/

相关文章:

Android:调试app-release.apk

c# - Visual Studio 自动将我的一个属性更改为 null

c# - CaSTLe Windsor 可以帮我拆分一个大接口(interface)的实现吗?

android - 在 Android 上使用 Visual Studio 2015 调试停止工作

python - Django TypeError 'method'对象不可下标

node.js - VSCode Node : Debugger not stopping at breakpoint (WSL2/Ubuntu18)

css - 媒体查询无法正常工作

c# - 字符 Å Ä Ö 没有显示在我的 DDL 中,我如何告诉 restclient 使用特定的字符集?

c# - Npgsql 参数化查询输出与 PostGIS 不兼容

c# - 泛型方法之间的模糊引用