Pregunta

Tengo una aplicación Asp.Net MVC que funciona en el servidor web de desarrollo vs.net. Cuando publico en IIS7 me sale el siguiente error. ¡He pasado muchas horas y todavía no tengo solución!

 [NullReferenceException: Object reference not set to an instance of an object.]
   System.Web.PipelineStepManager.ResumeSteps(Exception error) +929
   System.Web.HttpApplication.BeginProcessRequestNotification(HttpContext context, AsyncCallback cb) +91
   System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +508

Aquí está el Application_Start

protected void Application_Start()
        {


                ConfigureLogging();


                ComponentRegistrar.RegisterComponents();


                NHibernateSession.InitSqlServer2005(new WebSessionStorage(this), Settings.Default.DefaultConnString);


                CacheManager.InitCaches();

            }
        }

Llegué tarde a esta aplicación y no conozco las mejores prácticas de MVC y NHibernate

¿Fue útil?

Solución

No puede configurar nhibernate en el inicio de la aplicación. No sé exactamente por qué, pero también tuve este problema.

Puede inicializarlo en Init (). También puedes ver que se hace aquí http://code.google.com/p/sharp-architecture/source/checkout

Otros consejos

Mover mi código de inicialización de nhibernate de Application_Start () a Init () aún no se ejecutó lo suficientemente tarde como para corregir el error. Así que me topé con esto . La solución que utilicé no fue de la publicación original , sino del primer comentario de jbland. Básicamente, mueve la inicialización de nhibernate para que ocurra en la primera solicitud.

Una cosa a tener en cuenta es que su código no le da el contexto de dónde proviene webSessionStorage. Es una variable miembro y debe instanciarse en Init ().

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top