C# Class NSoft.NFramework.Data.NHibernateEx.UnitOfWorkHttpApplication

Web Application에서 NHibernate용 Unit-Of-Work 을 편리하게 사용하기 위해 구현하였다.
모든 요청에 대해 UnitOfWork를 시작/완료를 자동으로 수행하게 하므로서, 실제 page/web service 개발자가 UnitOfWork의 초기화 및 종료 처리를 수행하지 않아도 된다.

Web Application의 global.asax에서 Inherits="NSoft.NFramework.Data.NH.UnitOfWorkHttpApplication" 를 추가하면 됩니다.
Session 사용이 가능한 Web Application에서는 여러 페이지에 걸쳐 UnitOfWork를 유지할 수 있다. 이를 Long Conversation이라 하는데, Web Application에서의 다중 작업에 대해 Transaction을 유지 할 수 있다.
Inheritance: NSoft.NFramework.Web.HttpApplications.WindsorAsyncHttpApplication
显示文件 Open project: debop/NFramework Class Usage Examples

Private Properties

Property Type Description
NeedStartUnitOfWork bool
UnitOfWorkHttpApplication System

Protected Methods

Method Description
ApplicationStartAfter ( HttpContext context ) : void

Application_Start 시에 실행할 비동기 작업의 본체입니다.

OnBeginRequest ( object sender, EventArgs e ) : void

ASP.NET에서 페이지 또는 XML Web services 같은 이벤트 처리기의 실행을 시작하기 바로 전에 발생하는 Event에 대한 Handler
1. Application 생성 시 한번만 IoC 관련 정보를 초기화 합니다.
2. UnitOfWork를 Start 시킵니다.

기본 설정 파일이 아닌 다른 파일에 대해 초기화를 하려면 재정의를 해야 한다.

OnEndRequest ( object sender, EventArgs e ) : void

Web Application의 요청 처리 후 사후 처리를 한다. UnitOfWork 를 Stop 시키고,

Private Methods

Method Description
NeedStartUnitOfWork ( ) : bool

UnitOfWork를 시작시켜야할 요청인지 판단합니다. gif 파일이나 css 파일 요청 시에는 굳이 UnitOfWork를 시작할 필요가 없습니다.

UnitOfWorkHttpApplication ( ) : System

Static constructor

Method Details

ApplicationStartAfter() protected method

Application_Start 시에 실행할 비동기 작업의 본체입니다.
protected ApplicationStartAfter ( HttpContext context ) : void
context System.Web.HttpContext
return void

OnBeginRequest() protected method

ASP.NET에서 페이지 또는 XML Web services 같은 이벤트 처리기의 실행을 시작하기 바로 전에 발생하는 Event에 대한 Handler
1. Application 생성 시 한번만 IoC 관련 정보를 초기화 합니다.
2. UnitOfWork를 Start 시킵니다.
기본 설정 파일이 아닌 다른 파일에 대해 초기화를 하려면 재정의를 해야 한다.
protected OnBeginRequest ( object sender, EventArgs e ) : void
sender object
e System.EventArgs
return void

OnEndRequest() protected method

Web Application의 요청 처리 후 사후 처리를 한다. UnitOfWork 를 Stop 시키고,
protected OnEndRequest ( object sender, EventArgs e ) : void
sender object
e System.EventArgs
return void