ASP.NET MVC NHIBERNATE 앱을 IIS7에 배포 할 때 오류
-
03-07-2019 - |
문제
VS.NET Development Web Server에서 작동하는 ASP.NET MVC 응용 프로그램이 있습니다. 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
다음은 application_start입니다
protected void Application_Start()
{
ConfigureLogging();
ComponentRegistrar.RegisterComponents();
NHibernateSession.InitSqlServer2005(new WebSessionStorage(this), Settings.Default.DefaultConnString);
CacheManager.InitCaches();
}
}
이 응용 프로그램에 늦었고 MVC 및 NHibernate의 모범 사례를 모릅니다.
해결책
응용 프로그램 시작에서 nhibernate를 구성 할 수 없습니다. 나는 이유를 정확히 모르지만이 문제도있었습니다.
init ()에서 초기화 할 수 있습니다. 또한 여기서 완료된 것을 볼 수 있습니다http://code.google.com/p/sharp-architecture/source/checkout
다른 팁
nhibernate 초기화 코드를 application_start ()에서 init ()로 이동해도 오류를 수정하기에 충분히 늦지 않았습니다. 그래서 나는 우연히 발견했다 이것. 내가 사용한 해결책은 원래 게시물이 아닙니다, 그러나 JBLAND의 첫 번째 의견. 기본적으로 첫 번째 요청에서 nhibernate의 초기화가 발생합니다.
주목할만한 점은 그의 코드가 WebSessionStorage의 출처의 컨텍스트를 제공하지 않는다는 것입니다. 멤버 변수이며 init ()에서 인스턴스화해야합니다.
제휴하지 않습니다 StackOverflow