前言:
上一篇文章分享HttpApplicationFactory.GetApplicationInstance
方法返回一個HttpApplication
給HttpRuntime
來呼叫使用.
今天開始介紹HttpApplication
這個很重要的類別,它可謂是我們Asp.net
中很複雜但重要的類別
Global.cs
是繼承HttpApplication
類別,但為什麼需要繼承這個類別呢? 讓我們繼續看下去.
上一篇文章分享HttpApplicationFactory.GetApplicationInstance
方法返回一個HttpApplication
給HttpRuntime
來呼叫使用.
今天開始介紹HttpApplication
這個很重要的類別,它可謂是我們Asp.net
中很複雜但重要的類別
Global.cs
是繼承HttpApplication
類別,但為什麼需要繼承這個類別呢? 讓我們繼續看下去.
附上Asp.net
執行請求流程圖.
在前一篇我們說到HttpRunTime
會透過GetApplicationInstance
來取得一個IHttpHandler
對象.
今天跟著原始碼來了解到底回傳一個什麼IHttpHandler
物件給HttpRunTime
使用.
查看原始碼好站 Reference Source
上一篇我們介紹HttpModule & HttpHandler
對於
今天正式進入.Net CLR
處理Http請求的世界.
先附上Asp.net
執行請求流程圖.
現在開始講解藍色區塊.
查看原始碼好站 Reference Source
上一篇文章我們有說 Asp.net 有兩個核心組件 IHttpMoudle & IHttphandler
Asp.net
是一個pipeline
的模型,理解這些管道除了可以讓我們節省許多不必要的資源浪費也可讓我們程式架構更加有條理.
就像我們在Asp.net MVC
如果要寫權限驗證程式碼,雖然可以寫在Controller
的Action
中
但更好做法是我可以寫一個類別繼承AuthorizeAttribute
並override
OnAuthorization
方法並掛上此標籤.
更了解這些原理可以讓我們寫程式事半功倍.
三十篇文章架構基本遵循:
前言:
前情提要,閱讀此文建議使用工具或知識.