Состояние сеанса может использоваться только в том случае, если для свойства enableSessionState установлено значение true, либо в файле конфигурации, либо в директиве Page. - PullRequest
1 голос
/ 08 февраля 2011

Я получаю эту ошибку в моем приложении .net (Azure): - Состояние сеанса можно использовать только в том случае, если для свойства enableSessionState задано значение true, либо в файле конфигурации, либо в директиве Page ...

Я переписываю URL (для этого использую server.transfer)

Когда я получаю доступ к странице напрямую или с помощью Response.Redirect, ошибки не возникает.

Есть идеи?

Я использую приведенный ниже код.

Открытый класс URLRewriter Реализует IHttpModule Public Sub Init (ByVal inst As System.Web.HttpApplication) Реализует System.Web.IHttpModule.Init AddHandler inst.BeginRequest, AddressOf Me.OnBeginRequestEnd Sub

Public Sub OnBeginRequest(ByVal app As Object, ByVal e As EventArgs)
    Dim inst As HttpApplication = CType(app, HttpApplication)
    Dim req_path As String = inst.Context.Request.Path
    Dim trans_path As String = ""
    Select Case req_path.ToLower()
        Case "/firstpage"
            trans_path = "/Default.aspx"
        Case "/secondpage"
            trans_path = "/About.aspx"
        Case "/testapp"
            trans_path = "/Test/Test1.aspx"
        Case Else
            trans_path = "/"
    End Select

    If Not trans_path = "/" Then
        inst.Context.Server.Transfer(trans_path)
    End If
End Sub

End Class

В web.config я также добавил этот тег в httpModules: -

   <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
  <add name="URLRewriter" type="URLRewriter"/>
  <add type="System.Web.SessionState.SessionStateModule" name="Session" />

after adding above code in my azure application url rewrite is working fine, but when I try to use session its giving me error(Session state can only be used when enableSessionState is set to true, either in a configuration file or in the Page directive.) means its lossing the session during url rewrite.
...