国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
HttpModule到底是個(gè)什么東西

  在學(xué)習(xí)DNN到UrlRewriteModule類時(shí)(UrlRewriteModule.vb中),發(fā)現(xiàn)這個(gè)類是由IHttpModule接口繼承來的。一查MSDN知道了UrlRewriteModule原來是個(gè)HttpModule。那么HttpModule到底是個(gè)什么東西?有什么用?用了有什么好處?
  HttpModule這個(gè)東西我原來從來沒有用到過(可見自己的知識(shí)面和.net的龐大功能有多么大的差別)。這次學(xué)習(xí)DNN讓我有機(jī)會(huì)見到HttpModule,不能放過這個(gè)知識(shí)點(diǎn)的空缺。在查詢了相關(guān)的資料以后終于算是對(duì)HttpModule有了初步的了解。

  HttpModule 是實(shí)現(xiàn) IHttpModule 接口和處理事件的程序集。ASP.NET 包含一組可由應(yīng)用程序使用的 HttpModule 模塊。例如,ASP.NET 提供了 SessionStateModule 來向應(yīng)用程序提供會(huì)話狀態(tài)服務(wù)??梢詣?chuàng)建自定義 HttpModule 以響應(yīng) ASP.NET 事件或用戶事件。
編寫 HttpModule 的一般過程為:
1、實(shí)現(xiàn) IHttpModule 接口,如:

    Public Class UrlRewriteModule
        
Implements IHttpModule
    
End Class

2、處理 Init 方法并為所需事件進(jìn)行注冊(cè),如:

    Public Sub Init(ByVal application As HttpApplication) Implements IHttpModule.Init
       
'初始化時(shí)為 HttpApplication 事件 BeginRequest 注冊(cè)事件處理程序OnBeginRequest
       AddHandler application.BeginRequest, AddressOf Me.OnBeginRequest
    
End Sub

3、處理該事件,如:

    Public Sub OnBeginRequest(ByVal s As ObjectByVal e As EventArgs)
        
'代碼略
    End Sub

4、如果必須進(jìn)行清理,還可根據(jù)需要實(shí)現(xiàn) Dispose 方法。

    Public Sub Dispose() Implements IHttpModule.Dispose
    
End Sub

5、在 Web.config 中注冊(cè)該模塊。 

    <!-- 在一個(gè)應(yīng)用程序內(nèi)配置 HTTP 模塊 -->
    
<httpModules>
      
<add name="UrlRewrite" type="DotNetNuke.HttpModules.UrlRewriteModule, DotNetNuke.HttpModules.UrlRewrite" />
    
</httpModules>

  在原來要處理application.BeginRequest事件(發(fā)出信號(hào)表示新的請(qǐng)求時(shí)觸發(fā)),一般都寫在 Global.asax 里的Application_BeginRequest中,原來程序中BeginRequest事件中的處理并不多,代碼量也很少,把BeginRequest事件的處理的代碼都放到Global.asax中也沒有什么問題。可是在DNN中BeginRequest要處理的事件很多,還可能有擴(kuò)充的需求。而且將不同功能的事件處理,寫到不同HttpModule中也能夠使代碼結(jié)構(gòu)更加清晰。
  但是如果有多個(gè)HttpModule都包括application.BeginRequest那么程序的執(zhí)行先后順序又是怎樣的呢?是不是先執(zhí)行Global.asax 里的,然后按照Web.config中的順序來呢?關(guān)于這一點(diǎn)還沒有找到答案,希望知道的人能告知一聲,謝謝!使用HttpModule還有什么更多的好處呢?也希望大家能指出,再次謝謝!

相關(guān)知識(shí):
http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/cpguide/html/cpconhandlingpublicevents.asp

在ASP.NET中實(shí)現(xiàn)Url Rewriting

更多相關(guān)內(nèi)容>>

Feedback

# re: [DNN學(xué)習(xí)所得]HttpModule到底是個(gè)什么東西   回復(fù)  引用  查看    

2005-05-14 21:40 by R.Z
你可以設(shè)置端點(diǎn)跟蹤一下就知道了,我跟蹤的結(jié)果是global中的beginrequest最后執(zhí)行。

# re: [DNN學(xué)習(xí)所得]HttpModule到底是個(gè)什么東西   回復(fù)  引用  查看    

2005-05-16 09:25 by 二十四畫生
居然是global中的beginrequest最后執(zhí)行,看來自己是想錯(cuò)了。

# re: [DNN學(xué)習(xí)所得]HttpModule到底是個(gè)什么東西   回復(fù)  引用  查看    

2005-05-16 13:52 by djshow
<Asp.net 深入理解>里面有一章是專門講httpModule,httpHandler的, 那一章就網(wǎng)上隨處可見的<asp.net 深度歷險(xiǎn)>


那里面講得蠻清楚的,推薦閱讀.

# re: [DNN學(xué)習(xí)所得]HttpModule到底是個(gè)什么東西   回復(fù)  引用  查看    

2005-05-23 06:09 by osone
上傳圖片到MSSQL,然后通過一個(gè)DataList顯示圖片,datalist中圖片的讀取由一個(gè)
ashx文件完成,不知道怎么搞的,datalist中的圖片不能顯示出來

二十四畫生:對(duì)person starter kit 和club starter kit有研究嗎?

# re: [DNN學(xué)習(xí)所得]HttpModule到底是個(gè)什么東西   回復(fù)  引用  查看    

2005-07-05 11:56 by Harry
我想聘請(qǐng)一個(gè)對(duì)dotnetnuke有研究(負(fù)責(zé)任的)的程序員。如果有興趣請(qǐng)聯(lián)系harry_shine@hotmail.com

# re: [DNN學(xué)習(xí)所得]HttpModule到底是個(gè)什么東西   回復(fù)  引用  查看    

2005-07-22 15:12 by 六子
我是在這兒學(xué)習(xí)HttpModule的:
http://www.microsoft.com/china/MSDN/library/architecture/patterns/esp/ImpInterCEptingFilterInASP.mspx

# re: [DNN學(xué)習(xí)所得]HttpModule到底是個(gè)什么東西[未登錄]   回復(fù)  引用  查看    

2007-08-12 16:46 by 馬攀科
樓主是我學(xué)習(xí)的榜樣!
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
ASP.Net中自定義Http處理及應(yīng)用之HttpModule篇
HttpApplication處理對(duì)象與HttpModule處理模塊 (第三篇)
Url Rewrite 再說Url 重寫
HttpModule的認(rèn)識(shí)
asp.net MVC 應(yīng)用程序的生命周期(上)
Global.asax詳解
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服