我在我的網站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