是否可以在调试 ASP.NET 页面期间修改值、键甚至清除会话?
我在即时窗口中尝试了以下内容(按显示的顺序),但没有任何更改会话对象:
Session.Clear()
Expression has been evaluated and has no value
Session.Keys
{System.Collections.Specialized.NameObjectCollectionBase.KeysCollection}
Count: 12
Session.Clear()
Expression has been evaluated and has no value
Session.Keys[0]
"user_id"
Session.Abandon()
Expression has been evaluated and has no value
Session["user_id"]
3
编辑:好的,看起来我有时可以改变它。这是非常令人费解的。如果有人知道为什么它有时会失败,我将不胜感激。
您可以在调试模式下使用中间窗口和命令窗口更改会话。
只要确保你没有任何代码(例如,属性的getter,打印{HttpContext.Current.Session["some_key"] = [some value];}
等"消息"的流氓跟踪点等),在进行更改后重置值。
(经验教训。