ashx 與 session 的互動

17:32 0 Comments A+ a-

這是 ASP.Net 筆記,於 ashx 讀寫 Session 物件。

就在剛剛在 coding 時,突然被卡住。

錯誤提示:未將對象引用設置到對象的實例

查了查 MSDN、及其他開發者的文章,原來泛型處理常式要讀寫 Session 物件時,必需先實作 IRequiresSessionState﹔若僅需讀取時,則實作 IReadOnlySessionState 即可。

VB example:

01. Imports System
02. Imports System.Web
03. Imports System.Web.SessionState
04. Public Class AshxTest : Implements IHttpHandler, IRequiresSessionState
05.
06. Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
07.
08. context.Session("Test") = True '寫入 Session
09. context.Response.Write(context.Session("Test")) '讀取 Session
10.
11. End Sub
12.
13. Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable
14. Get
15. Return True
16. End Get
17. End Property
18.
19. End Class