我在我的网站Session [“name”],Session [“lastname”]和Session [“username”]中有3个活动会话,Session.Abandon()会放弃所有会话吗?会话放弃
Q
会话放弃
0
A
回答
2
其实,你有一个活动会话(不是三个)。该会话具有与它关联的那三个键/值对。
是的,只要当前页面处理完成,Session.Abandon()将在放弃会话的过程中删除所有这些变量。
一旦放弃方法被调用,当前会话不再有效,并且可以启动新的会话。
http://msdn.microsoft.com/en-us/library/system.web.sessionstate.httpsessionstate.abandon.aspx
当Abandon方法被调用时,当前的Session对象排队等待删除,但实际上并没有被删除,直到所有的脚本都已经被处理了当前页面上的命令。这意味着您可以访问与放弃方法调用相同的页面中存储在Session对象中的变量,但不能访问任何后续Web页面中的变量。
http://msdn.microsoft.com/en-us/library/ms524310(v=vs.90).aspx
UPDATE
如果你想完成执行页面之前, “摆脱” 键/值对,也可以清除它们是这样的:
Session.Contents.RemoveAll()
0
是的,对象就会被破坏,但没有立即(从msdn)
当Abandon方法被调用时,当前的Session对象是 排队等待删除,但实际上并没有被删除,直到所有的 脚本命令在当前页面上已经被处理。这意味着 ,您可以访问存储在会话对象中的变量,在与放弃方法调用相同的 页面上访问变量,但不能访问任何后续Web页面中的变量。
它是一个会话和3个变量。如果您需要尽快删除它们,请将它们指向null,并且数据将立即成为GC的主题(这不是确定性的)。
Session["name"] = null;
Session["lastname"] = null;
Session["username"] = null;
0
是的,它销毁存储在Session对象中的所有对象并释放它们的资源。
相关问题
- 1. 放弃ASP.NET会话
- 2. Session.Abandon()不会立即放弃会话
- 3. Teradata放弃任何特定会话
- 4. 会话废弃
- 5. 如何防止闲置用户的会话放弃(会话明智)
- 6. 我是否可以从发出请求的会话中放弃InProc ASP.NET会话?
- 7. 在浏览器关闭asp.net的放弃会话。关闭会话cookie
- 8. HTML5拖放不会丢弃
- 9. 向用户显示消息,然后放弃会话
- 10. 如何在关闭网页时放弃会话变量?
- 11. 会话放弃在ASP.NET中不起作用
- 12. 如何杀死/放弃服务器上的所有asp.net会话
- 13. 让Oracle自动回滚放弃的会话吗?
- 14. 离开当前页面时ASP.NET MVC放弃会话
- 15. 如果用户X退出浏览器,如何放弃会话?
- 16. 会话没有被放弃 - 使用菜单控制?
- 17. 使用HTML链接注销并放弃会话
- 18. PHP会话功能说弃用
- 19. Magento 2丢弃所有会话参数
- 20. 使Domino/HTTP会话失效/丢弃?
- 21. EJB 3.1丢弃有状态会话bean
- 22. 为什么这会在UIlabel上放弃?
- 23. 放弃会议没有清除所有
- 24. Pymongo失败,但不会放弃例外
- 25. dropCollection是不会放弃的收集
- 26. Soundcloud不会放弃音频焦点
- 27. JSON解析不会放弃使用GSON
- 28. networkx不会放弃对加权图
- 29. Drop表是否也会放弃约束?
- 30. ヶ辆不会放弃希望导致
谢谢,这是有用的:) – Katerina 2012-07-25 15:53:31
很高兴帮助:-)。欢迎来到Stack Overflow。请记住对您的问题进行回复和/或接受好的答案。 – 2012-07-25 15:54:35