9

ASP.NET OutputCacheとCookieで提案されているように、Global.asax.vbのApplication_EndRequestにCookieを設定しようとしています。

私は次のコードを書きました、cookieはERROR値を取得します。

なぜセッションが利用できないのですか?

Sub Application_EndRequest(ByVal sender As Object, ByVal e As EventArgs)
    Dim context As HttpContext = HttpContext.Current
    If Not context.Session Is Nothing Then
        context.Response.Cookies("T").Value = context.Session("T")
    Else
        context.Response.Cookies("T").Value = "ERROR"
    End If
End Sub
4

1 に答える 1

15

イベントにセッションが存在しなくなりましたApplication_EndRequest

Application_PostRequestHandlerExecuteアプリケーションからのコードが実行された後、SessionStateが解放される前に呼び出されます。

Sub Application_PostRequestHandlerExecute(ByVal sender As Object, ByVal e As EventArgs)
    Dim context As HttpContext = HttpContext.Current
    If Not context.Session Is Nothing Then
        context.Response.Cookies("T").Value = context.Session("T")
    Else
        context.Response.Cookies("T").Value = "ERROR"
    End If
End Sub
于 2013-01-28T20:40:36.423 に答える