日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
淺談ASP.NET應(yīng)用

當(dāng)一個(gè)請(qǐng)求到來(lái)時(shí),它被路由到ISAPIRuntime.ProcessRequest() 方法.這個(gè)方法調(diào)用HttpRuntime.ProcessRequest方法,它作一些重要的事情(用Reflector查看 System.Web.HttpRuntime.ProcessRequestInternal方法):
◆為請(qǐng)求創(chuàng)建一個(gè)新的HttpContext實(shí)例
◆獲取一個(gè)HttpApplication實(shí)例
◆調(diào)用HttpApplication.Init()方法來(lái)設(shè)置管道的事件
◆Init()方法觸發(fā)開始ASP.NET管道處理的HttpApplication.ResumeProcessing()方法。

專注于為中小企業(yè)提供成都網(wǎng)站制作、網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)嘉善免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了千余家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

介紹ASP.NET應(yīng)用,首先一個(gè)新的HttpContext對(duì)象被創(chuàng)建并用來(lái)傳遞ISAPIWorkerRequest(ISAPI ECB的包裝器).這個(gè)上下文在整個(gè)請(qǐng)求的生命周期總都是可用的并總可以通過(guò)靜態(tài)屬性HttpContext.Currect來(lái)訪問(wèn).正像名字所暗示的那樣,HttpContext對(duì)象代表了當(dāng)前活動(dòng)請(qǐng)求的上下文因?yàn)樗嗽谡?qǐng)求生命周期中所有典型的你需要訪問(wèn)的重要對(duì)象:Request,Response,Application,Server,Cache.在請(qǐng)求處理的任何時(shí)候 HttpContext.Current給你訪問(wèn)所有這些的能力.

HttpContext對(duì)象也包含一個(gè)非常有用的Items集合,你可以用它來(lái)保存針對(duì)特定請(qǐng)求的數(shù)據(jù).上下文對(duì)象在請(qǐng)求周期的開始時(shí)被創(chuàng)建,在請(qǐng)求結(jié)束時(shí)被釋放,所有在Items集合中保存的數(shù)據(jù)只在這個(gè)特定的請(qǐng)求中可用.一個(gè)很好的使用的例子是請(qǐng)求日志機(jī)制,當(dāng)你通過(guò)想通過(guò)在 Global.asax中掛接Application_BeginRequest和Application_EndRequest方法記錄請(qǐng)求的開始和結(jié)束時(shí)間(象在列表3中顯示的那樣).HttpContext對(duì)你就非常有用了-如果你在請(qǐng)求或頁(yè)面處理的不同部分需要數(shù)據(jù),你自由的使用它.

 
 
 
  1. protected void Application_BeginRequest(Object sender, EventArgs e)  
  2. {  
  3. //*** Request Logging  
  4. if (App.Configuration.LogWebRequests)  
  5. Context.Items.Add("WebLog_StartTime",DateTime.Now);  
  6. }  
  7.  
  8. protected void Application_EndRequest(Object sender, EventArgs e)  
  9. {  
  10. // *** Request Logging  
  11. if (App.Configuration.LogWebRequests)  
  12. {  
  13. try  
  14. {  
  15. TimeSpan Span = DateTime.Now.Subtract( (DateTime) Context.Items["WebLog_StartTime"] );  
  16. int MiliSecs = Span.TotalMilliseconds;  
  17. // do your logging  
  18. WebRequestLog.Log(App.Configuration.ConnectionString,true,MilliSecs);  
  19. }  
  20. }  

一旦上下文被設(shè)置好,ASP.NET需要通過(guò)HttpApplication對(duì)象將收到的請(qǐng)求路由到適合的應(yīng)用程序/虛擬目錄.每個(gè)ASP.NET應(yīng)用程序必須被設(shè)置到一個(gè)虛擬目錄(或者Web根目錄)而且每個(gè)”應(yīng)用程序”是被單獨(dú)的處理的。

HttpApplication類似儀式的主人-它是處理動(dòng)作開始的地方。

域的主人:HttpApplication

每個(gè)請(qǐng)求都被路由到一個(gè)HttpApplication對(duì)象上.HttpApplicationFactory類根據(jù)應(yīng)用程序的負(fù)載為你的 ASP.NET應(yīng)用創(chuàng)建一個(gè)HttpApplication對(duì)象池并為每個(gè)請(qǐng)求分發(fā)HttpApplication對(duì)象的引用.對(duì)象池的大小受 machine.config文件中ProcessModel鍵中的MaxWorkerThreads設(shè)置限制,默認(rèn)是20個(gè)(譯注:此處可能有誤,根據(jù) Reflector反編譯的代碼,池的大小應(yīng)該是100個(gè),如果池大小小于100,HttpApplicationFactory會(huì)創(chuàng)建滿100個(gè),但是考慮到會(huì)有多個(gè)線程同時(shí)創(chuàng)建HttpApplication的情況,實(shí)際情況下有可能會(huì)超過(guò)100個(gè))。


網(wǎng)站題目:淺談ASP.NET應(yīng)用
網(wǎng)頁(yè)路徑:http://www.5511xx.com/article/cdsdcjs.html