ASP.NET MVC の イベント 発生順序

0 件のコメント

ASP.NET MVC において、/Home/Index へアクセスした場合、発生するイベントの順序を調べてまとめました。 IIS へ アクセス した タイミング によって発生する イベント が異なるので、それぞれ分かるよう プルダウン を準備しました。

調査対象は HttpApplication (Global.asax)IHttpModuleIAuthorizeFilterIActionFilterControllerView (*.cshtml) です。

ASP.NET MVC における イベント発生順 まとめ

ライフサイクル

IIS ライフサイクル クラス名 イベント名 / メソッド名
Start Global.asax Application_Start
Init IHttpModule Init
BeginRequest IHttpModule BeginRequest
Global.asax Application_BeginRequest
AuthenticateRequest IHttpModule AuthenticatRequest
Global.asax Application_AuthenticateRequest
PostAuthenticateRequest IHttpModule PostAuthenticateRequest
AuthorizeRequest IHttpModule AuthorizeRequest
PostAuthorizeRequest IHttpModule PostAuthorizeRequest
ResolveRequestCache IHttpModule ResolveRequestCache
PostResolveRequestCache IHttpModule PostResolveRequestCache
PostMapRequestHandler IHttpModule PostMapRequestHandler
Session_Start Global.asax Session_Start
PostAcquireRequestState IHttpModule PostAcquireRequestState
PreRequestHandlerExecute IHttpModule PreRequestHandlerExecute
IAuthorizationFilter OnAuthorization
IActionFilter OnActionExecuting
HomeController Index
IActionFilter OnActionExecuted
IActionFilter OnResultExecuting
_Page_Views_Home_Index_cshtml Execute
IActionFilter OnResultExecuted
PostRequestHandlerExecute IHttpModule PostRequestHandlerExecute
ReleaseRequestState IHttpModule ReleaseRequestState
PostReleaseRequestState IHttpModule PostReleaseRequestState
UpdateRequestCache IHttpModule UpdateRequestCache
PostUpdateRequestCache IHttpModule PostUpdateRequestCache
EndRequest IHttpModule EndRequest
Session_End Global.asax Session_End
Dispose IHttpModule Dispose
End Global.asax Application_End

今回、以下のサイトを参考にしました。