Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/06/2012, 13:26
el_brujo
 
Fecha de Ingreso: junio-2012
Mensajes: 1
Antigüedad: 12 años, 9 meses
Puntos: 0
Problema con variable Session

Hola, tengo el siguiente problema

Implemente esta solucion como metodo de espera hasta que termine un proceso:
http://www.simple-talk.com/dotnet/asp.net/implementing-waiting-pages-in-asp.net/

Mas o menos a grandes rasgos, cuando doy aceptar dispara este codigo:

Protected Sub cmdAceptar_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles cmdAceptar.Click

Di = System.Guid.NewGuid()

Dim hilo1 As New Thread(AddressOf AceptaLiquidacion)

hilo1.Start()

Response.Redirect("StatusEspera.aspx?ID=" + Di.ToString)

End Sub

y el codigo de AceptaLiquidacion es:

Private Sub AceptaLiquidacion()

Try

Dim cnnBaseDat As New SqlClient.SqlConnection(Session("db").ToString)
Dim sqlCierraLiquidacion As New SqlCommand("CierraLiquidacion", cnnBaseDat)

sqlCierraLiquidacion.CommandTimeout = 0
sqlCierraLiquidacion.CommandType = CommandType.StoredProcedure

Dim miParam1 As New SqlParameter("@fecdesde1", SqlDbType.Char, 8)
miParam1.Direction = ParameterDirection.Input
sqlCierraLiquidacion.Parameters.Add(miParam1)
sqlCierraLiquidacion.Parameters("@fecdesde1").Valu e = Session("FechaDesde")

y sigue...

el problema que tengo es que al llegar a esta linea:

Dim cnnBaseDat As New SqlClient.SqlConnection(Session("db").ToString)

hay veces (en desarrollo) y siempre en produccion que me tira este error:

Excepción no controlada. Proceso terminado.

Application ID: /LM/W3SVC/1/ROOT/Fletes

Process ID: 6304

Exception: System.Web.HttpException

Message: Sólo puede utilizar el estado de sesión cuando enableSessionState está establecido como true, en un archivo de configuración o en la directiva de la página. Asegúrese además de que se incluye System.Web.SessionStateModule o un modo de estado de sesión personalizado en la sección <configuration>\<system.web>\<httpModules> de la configuración de la aplicación.

StackTrace: en Liquidacion.CalculaLiquidacion()
en System.Threading.ThreadHelper.ThreadStart_Context( Object state)
en System.Threading.ExecutionContext.runTryCode(Objec t userData)
en System.Runtime.CompilerServices.RuntimeHelpers.Exe cuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
en System.Threading.ExecutionContext.RunInternal(Exec utionContext executionContext, ContextCallback callback, Object state)
en System.Threading.ExecutionContext.Run(ExecutionCon text executionContext, ContextCallback callback, Object state)
en System.Threading.ThreadHelper.ThreadStart()

aplique todas las configuraciones para usar session y me sigue reventando.

Alguien podria ayudarme?

Saludos!