Tengo una aplicación web que depende en gran medida de los servicios web. Todo con los servicios se realiza de forma asíncrona y con AddOnPreRequestHandlerExecuteAsync. De todos modos, la mayoría de mis llamadas funcionan bien, pero algunas vuelven de sus llamadas de servicio asíncronas para encontrar un objeto nulo HttpContext.Current.Response/Request en la solicitud final, que por supuesto errores en el instante que trato de usar cualquiera. Ambos objetos (Respuesta y Solicitud están disponibles/no son nulos en el comienzo de la solicitud de llamadas defectuosas y funcionan al final de la solicitud de otras llamadas).HttpWebRequests asincrónico y un objeto nulo HttpContext.Current.Response/Request
¿Alguien se encuentra con algo similar, o tiene una conjetura sobre cuál podría ser el problema?
Actualización: Parece que he encontrado una solución, si creo una variable para HttpApplication en Init (del HttpModule esto ocurre), se puede acceder al HttpContext desde esa variable.
Actualización: Al pasar HttpApplication o HttpContext.Current en la función begin tiene el mismo problema. Cuando pasan como parte del "Estado" de la llamada asincrónica, terminan nulos en la función final, aunque son válidos en la función de inicio.
Actualización: He agregado algunos registros y encontré que la llamada asincrónica que estoy realizando está regresando correctamente, los resultados están ahí, la función de devolución de llamada se invoca correctamente.
¿Puede describir con detalles cómo resolvió el problema? – omoto
En mi HttpModule tengo una variable de tipo HttpApplication. En la llamada a la función init() configuro esta variable a HttpApplication que se pasa a init. En BeginPreRequestHandlerExecute y EndPreRequestHandlerExecute me refiero al HttpContext actual usando oApplication.Context, oApplication es el nombre de la variable HttpApplication en mi HttpModule. – aepheus