在Visual Studio中进行调试时,如何查看所有会话键/值对?

Ste*_*ers 5 .net debugging asp.net-mvc session visual-studio

在Visual Studio(.Net MVC4)中进行调试时,是否可以一次查看所有Controller.Session键/值?我可以通过键入QuickWatch并展开“结果视图” 来查看所有Session。例如:

    Results View
    [0] "IsPlaced"  
    [1] "FromSLC"   
    [2] "PersonalId"    
    [3] "FullName"  
Run Code Online (Sandbox Code Playgroud)

我知道可以像这样检查单个值,但无法同时获取所有键和值的列表。在QuickWatch或“即时窗口”中肯定一定有可能吗?

Ome*_*viv 2

我没有看到一个简单的方法来做到这一点,最好的选择是编写一个方法,该方法接受 HttpSessionState 并将其转换为字典,然后从 QuickWatch 窗口调用该方法。一个更复杂的解决方案是为HttpSessionState编写自己的DebuggerTypeProxy并将其放入 autoexp.cs文件中,这种方法的优点是它可以跨不同的应用程序工作,并且不会强迫您使用以下代码弄脏您的解决方案仅用于调试。