8

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

一位朋友建议我使用“即时窗口”选项卡并输入我的 Session 变量的名称(即,Session["SomeValue"] 并按 Enter。这确实给了我 Session 变量的值。这对于单个会话变量,但在处理多个变量时它变得有点麻烦。

无论如何,我可以浏览到存储所有会话变量的键/值对的部分,就像我可以为局部变量一样?

4

2 回答 2

3

也许您可以尝试使用 Watch Windows。类型

httpContext.Session["your session variable name"]
于 2012-08-15T14:13:55.440 回答
3

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

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

在 web.config

<configuration>
  <system.web>
    <trace enabled="true" requestLimit="40" pageOutput="true|false" />
  </system.web>
</configuration>

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

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

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

于 2012-08-15T14:23:37.893 回答