asp.net - instalar - Servicio de estado al usar system.web.routing en WebForms
rewrite url iis 7 example (2)
Estoy teniendo el mismo problema y creo que sé cuál es el problema.
Estoy tratando de implementar una página FileNotFound bajo el sistema de enrutamiento (algo que todavía tengo que averiguar es cómo dar una página FileNotFound Y dar una respuesta 404 en el encabezado)
Lo que he encontrado es que, por alguna razón, las páginas registradas en BuildManager parecen estar instaladas sin el contexto de la sesión (la página no fue solicitada, ¡solo instanciada!).
Al menos eso es lo que parece hacer.
Ahora estoy menos seguro de mi afirmación anterior. Aparentemente, las solicitudes de imágenes también pasan por el sistema de enrutamiento cuando no existen físicamente. Esto hace que se IRouteHandler
a un IRouteHandler
cuando la ruta de la imagen coincide. Estoy bastante seguro de que el objeto de sesión no existe cuando se solicita una imagen, por lo que puede causar el problema cuando la página que se enruta intenta acceder a ella.
Estoy utilizando el ensamblado System.Web.Routing en una aplicación WebForms. Al ejecutar la aplicación implementada en win2008 / IIS7 recibí el siguiente mensaje.
El estado de la sesión solo se puede usar cuando enableSessionState se establece en verdadero, ya sea en un archivo de configuración o en la directiva de la página. Asegúrese también de que System.Web.SessionStateModule o un módulo de estado de sesión personalizado esté incluido en la sección // de la configuración de la aplicación.
Esto es solo un problema cuando uso una ruta que he configurado. No es un problema cuando se navega directamente a una página aspx.
EnableSessionState se ha activado tanto en web.config como en la directiva de la página. He agregado la entrada de la sesión a httpmodule de web.config.
Esto no es un problema cuando desarrollo usando Visual Studio en mi estación de trabajo. Solo es un problema cuando intento ejecutar la aplicación bajo IIS7 en Win 2008.
Creo que lo que describes es similar a una pregunta que tuve.
Es posible que su IIS7 se esté ejecutando en un modo diferente y que se parezca más a II6 que a 7:
Un par de preguntas: 1. ¿Su mapeo está redireccionando su solicitud correctamente? 2. Cuando se mapea su solicitud, ¿a dónde va? 3. Si rastrea a través de esta página qué línea de código está generando el error (¿llega incluso a su código)?