如何在调试模式下浏览所有会话变量?

Bax*_*ter 8 c# debugging session-variables code-behind visual-studio-2010

我正在使用Microsoft Visual Studio 2010 Professional并开发asp.net/C#应用程序.在调试模式下,我可以在"Locals"选项卡下看到局部变量,还有一个名为"this"的东西,它扩展为多个树结构.但是,我无法在任何地方找到我的会话变量名称/值对.

一个朋友建议我使用"立即窗口"选项卡,然后输入我的会话变量(即,会话["someValue中"],然后按回车的名称.这确实给我的Session变量的值.这是一个很简单单个会话变量,但在处理多个变量时,它变得有点麻烦.

反正我是否可以浏览到存储所有会话变量的键/值对的部分,就像我可以用于局部变量一样?

Tim*_*ora 3

可能有一种更优雅的方法,但如果我记得您可以在启用跟踪时转储会话名称/值对。

  • 启用跟踪
  • 执行一个页面
  • 跟踪信息要么附加到底部,要么在以下位置提供~/Trace.axd

在 web.config 中

<configuration>
  <system.web>
    <trace enabled="true" requestLimit="40" pageOutput="true|false" />
  </system.web>
</configuration>
Run Code Online (Sandbox Code Playgroud)

http://msdn.microsoft.com/en-us/library/bb386420.aspx

当然,这仅在存在有意义的对象字符串表示时才有用。

您还可以考虑编写一个自定义可视化工具(我相信这是正确的术语),它允许您使用自己的自定义功能检查类型。我已经看到这样做是为了检查动态方法,它非常有用,尽管我认为编写一个方法会需要一些努力。