解析Asp.Net頁(yè)面執(zhí)行流程(2)_.Net教程
推薦:如何用.NET讀取 Flash格式文件信息一直以來(lái)存在這么一個(gè)問(wèn)題,就是當(dāng)用戶上傳的Flash文件時(shí)都需要附帶輸入Flash的寬和高,否則顯示的時(shí)候由于不知道這些數(shù)值而導(dǎo)致Flash比例不正常。 近日我做網(wǎng)站也涉及到了這方面的問(wèn)題
正如2.2中所提到的,這里主要是生成一個(gè)HttpApplication對(duì)象:
|
以下為引用的內(nèi)容: internal static string GetApplicationFile() |
首先會(huì)查看是否存在global.asax文件,如果有的話就用它來(lái)生成HttpApplication對(duì)象,從這里我們可以看到global.asax的文件名是在asp.net的框架中寫(xiě)死的,不能修改的。如果這個(gè)文件不存在就使用默認(rèn)的對(duì)象。
創(chuàng)建好HttpApplication之后對(duì)它進(jìn)行初始化:
| 以下為引用的內(nèi)容:
application = (HttpApplication) |
四、HttpApplication這個(gè)是比較復(fù)雜也比較重要的一個(gè)對(duì)象首先是執(zhí)行初始化操作,比較重要的一步就是進(jìn)行HttpModule的初始化:
| 以下為引用的內(nèi)容:
private void InitModules() |
程序接著進(jìn)行事件實(shí)際綁定:
if (HttpRuntime.UseIntegratedPipeline)
以下為引用的內(nèi)容:
{
this._stepManager = new PipelineStepManager(this);
}
else
{
this._stepManager = new ApplicationStepManager(this);
}
this._stepManager.BuildSteps(this._resumeStepsWaitCallback);
在ApplicationStepManager的BuildSteps方法中可以看到事件的綁定執(zhí)行順序:
app.CreateEventExecutionSteps(HttpApplication.EventBeginRequest,
steps);
app.CreateEventExecutionSteps(HttpApplication.EventAuthenticateRequest,
steps);
app.CreateEventExecutionSteps(HttpApplication.EventDefaultAuthenticatio
n, steps);
app.CreateEventExecutionSteps(HttpApplication.EventPostAuthenticateRequ
est, steps);
app.CreateEventExecutionSteps(HttpApplication.EventAuthorizeRequest,
steps);
app.CreateEventExecutionSteps(HttpApplication.EventPostAuthorizeRequest
, steps);
app.CreateEventExecutionSteps(HttpApplication.EventResolveRequestCache,
steps);
app.CreateEventExecutionSteps(HttpApplication.EventPostResolveRequestCa
che, steps);
steps.Add(new HttpApplication.MapHandlerExecutionStep(app));
app.CreateEventExecutionSteps(HttpApplication.EventPostMapRequestHandle
r, steps);
app.CreateEventExecutionSteps(HttpApplication.EventAcquireRequestState,
steps);
app.CreateEventExecutionSteps(HttpApplication.EventPostAcquireRequestSt
ate, steps);
app.CreateEventExecutionSteps(HttpApplication.EventPreRequestHandlerExe
cute, steps);
steps.Add(new HttpApplication.CallHandlerExecutionStep(app));
app.CreateEventExecutionSteps(HttpApplication.EventPostRequestHandlerEx
ecute, steps);
app.CreateEventExecutionSteps(HttpApplication.EventReleaseRequestState,
steps);
app.CreateEventExecutionSteps(HttpApplication.EventPostReleaseRequestSt
ate, steps);
steps.Add(new HttpApplication.CallFilterExecutionStep(app));
app.CreateEventExecutionSteps(HttpApplication.EventUpdateRequestCache,
steps);
app.CreateEventExecutionSteps(HttpApplication.EventPostUpdateRequestCac
he, steps);
this._endRequestStepIndex = steps.Count;
app.CreateEventExecutionSteps(HttpApplication.EventEndRequest, steps);
steps.Add(new HttpApplication.NoopExecutionStep());
原文地址:http://bbs.mb5u.com/Design/thread-1167995-1-1.html
分享:解析VC.NET擴(kuò)展Windows磁盤(pán)清理工具的功能摘 要 介紹了Windows磁盤(pán)清理工具二次開(kāi)發(fā)的擴(kuò)展接口,對(duì)其COM接口加以分解,并運(yùn)用ATL庫(kù)具體實(shí)現(xiàn)了清理“*.tmp”臨時(shí)文件的功能。 關(guān)鍵詞 磁盤(pán)清理工具、ATL庫(kù)、COM接口。
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實(shí)例(可帶附件)
- js實(shí)現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實(shí)現(xiàn)
- Asp.Net 無(wú)刷新文件上傳并顯示進(jìn)度條的實(shí)現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見(jiàn)代碼存在的偽造IP問(wèn)題探討
- VS2010 水晶報(bào)表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(kù)(連接字符串的配置及獲取)
- asp.net頁(yè)面?zhèn)髦禍y(cè)試實(shí)例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲(chǔ)過(guò)程實(shí)現(xiàn)分頁(yè)示例代碼
- 相關(guān)鏈接:
- 教程說(shuō)明:
.Net教程-解析Asp.Net頁(yè)面執(zhí)行流程(2)
。