2009-05-04 2 views
3

vnet 개발 웹 서버에서 작동하는 Asp.Net MVC 응용 프로그램이 있습니다. IIS7에 게시 할 때 다음 오류가 발생합니다. 나는 많은 시간을 보냈지만 여전히 해결책이 없다!ASP.NET MVC NHibernate 응용 프로그램을 IIS7에 배포 할 때 오류가 발생했습니다.

[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 

여기에 나는이 응용 프로그램에 늦게 와서 당신은 응용 프로그램 시작에 NHibernate에 구성하지 못할 MVC와 NHibernate에

답변

5

의 모범 사례를 모르는 위해 Application_Start

protected void Application_Start() 
     { 


       ConfigureLogging(); 


       ComponentRegistrar.RegisterComponents(); 


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


       CacheManager.InitCaches(); 

      } 
     } 

입니다. 나는 이유를 정확하게 모르지만, 나는 또한이 문제를 안고있었습니다.

Init()에서 초기화 할 수 있습니다. 또한 여기에서 볼 수 있습니다. http://code.google.com/p/sharp-architecture/source/checkout

+0

모듈에서이 코드를 사용했습니다. – Gary

+0

Hello Trilibit, Entity Framework init 액션과 동일한 문제가 있습니다.) –

1

내 nhibernate 초기화 코드를 Application_Start()에서 Init()로 이동해도 오류가 수정 될 정도로 늦지 않았습니다. 그래서 나는 this을 우연히 발견했다. 내가 사용한 솔루션은 원래 게시물에서가 아니라 이었지만 jbland의 첫 코멘트부터입니다. 기본적으로 nhibernate 초기화가 첫 번째 요청에서 발생하도록합니다.

그의 코드는 webSessionStorage의 출처에 대한 컨텍스트를 제공하지 않습니다. 멤버 변수이며 Init()에서 인스턴스화해야합니다.

관련 문제