是否有任何方法可以在不使用會話對象或數據庫的情況下保留整個Web應用程序會話中的數據?替換爲asp.net會話對象
0
A
回答
0
您可以將它們通過使用
response.redirect("URL")
的URL或者如果你想隱藏變量
Server.Transfer("URL",True)
0
還有ViewState的,但你必須要小心一點。
0
你有幾個選擇......你可以堅持查詢字符串上的所有內容,例如
http://www.example.com/MyPage.aspx?PersistedValue1=Value1&PersistedValue2=Value2
或者您可以將它們存儲在Viewstate/Cache/Application vars中,如果它們是頁面級別或全局設置的話。
雖然我不確定這些比使用Session更好。你爲什麼不想使用它。
0
這取決於您不喜歡的會話和數據庫。例如:
您可以設置一個獨立的進程(如Windows服務)爲您存儲會話狀態信息。無論你喜歡什麼,該過程都可以將信息保存在內存或文件中。結帳this文章瞭解更多信息。
您可以有效地實現您自己的會話系統,將用戶特定的實現存儲在Web服務器上的XML文件中。
您可以使用QueryString參數在頁面之間傳遞信息。
您可以使用asp.net Cache對象並使用UserID鍵入信息。
0
您可以創建一個新的GUID作爲cookie發送,並將GUID存儲在保存在應用程序對象中的自定義對象中。話雖如此,您的應用程序可能會更好地使用內置於ASP.NET中的會話管理。
-1
不是會話嗎? 然後使用數據庫它是次佳!
1
下面是持久化數據的某些選項:
- 會議
- 餅乾
- URL(查詢字符串PARAMS典型值)
- 隱藏的表單變量(包括ViewState中)
- JavaScript的數據(例如,在每個請求中將數組寫回客戶端)
- 使用IFRAME或框架集,以便父頁不會更改,並且可以從而保持應用程序的狀態
爲什麼會議不適合你? – 2009-06-04 13:01:14