c# - 从堆栈中获取所有引用和值

标签 c# .net clr

我必须在运行时从当前上下文中获取信息。所以我有兴趣获取有关当前本地人的信息并将其记录下来。 上下文将动态变化,因此我无法存储来自确切变量的信息。 我可以从 this.GetType() 获取信息并获取所有成员的值,但有时在我的情况下这不足以跟踪 float 错误。

如何在运行时从当前堆栈中获取所有 C# 引用和值并获取它们的类型和值(如 Visual Studio 中的 Locals 窗口)?

最佳答案

这对你有帮助吗:

MethodBase method = MethodBase.GetCurrentMethod();
MethodBody methodBody = method.GetMethodBody();
IEnumerable<LocalVariableInfo> variableInfos = methodBody.LocalVariables;

关于c# - 从堆栈中获取所有引用和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34812211/

相关文章:

c# - 'Lock' 占用 CPU 时间吗?

c# - "An entity object cannot be referenced by multiple instances of IEntityChangeTracker."

c# - 一个类知道它在数组中的位置是不好的做法吗?

c# - 将授权 token 传递给 Odata 客户端

c# - 将非托管 EXE 作为资源合并到托管 C# 代码中

c# - 我应该如何为其他开发人员使用 C# 在他们的项目中使用库 (.dll) 文件?

c# - 从具有特定用户名的系统帐户启动进程

.net 运行时 - Silverlight 运行时 =?

c# - 如果在 c# 中该类的任何方法中发生,则创建一个捕获异常的方法

c# - 指向 native C++ 堆的指针上的 Marshal.PtrToStructure 是否正常?