• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • ASP.NET Framework深度歷險(1)

    發表于:2007-06-30來源:作者:點擊數: 標簽:
    記得前一段時間有本不錯的書叫Delphi深度歷險,寫得不錯,我也就暫且借用了,:) 在這里我不打算簡單介紹ASP.NET的入門知識了,ASP.NET除了名字和古老的ASP有些相同外,已經是完完全全的改變了,雖然你仍能在ASP.NET中發現你熟悉的Session,Application等等,但
         記得前一段時間有本不錯的書叫Delphi深度歷險,寫得不錯,我也就暫且借用了,:)
      在這里我不打算簡單介紹ASP.NET的入門知識了,ASP.NET除了名字和古老的ASP有些相同外,已經是完完全全的改變了,雖然你仍能在ASP.NET中發現你熟悉的Session,Application等等,但是不要嘗試將他們同遠古的ASP時代的Session等等畫上等號。
      我們來慢慢的深入到ASP.NET Framework的核心內部,看看她是如何實現的,看看她是如何能承擔起下一代Web開發技術平臺這個美譽的。
      這篇東東不曾想過要完成多少章節,也沒有這個必要,權當日記的形式存在,或許很短,或許很長,我會盡我的所能來將ASP.NET Framework展現在諸位面前。
      如果你對ASP.NET Framework沒有任何了解,你同樣可以成為ASP.NET coding高手,如果是這樣,你就不必繼續看下去了。
      
      Chapter One -- Process a http request.
      
      我們瞧一瞧ASP.NET Framework的運行機制和架構。
      在開始之前,我們先跟隨考古學家參觀一下古老的ASP運行機制:
      當你請求一個*.asp文件的時候,這個http request首先被.netinfo.exe進程所截獲,這個inetinfo.exe進程就是WWW服務進程,然后她會將這個請求轉交給asp.dll進程,asp.dll進程就會解釋執行這個asp葉面,然后將解釋后的數據流返回給客戶端瀏覽器。
      
      轉過頭來我們看看如今的ASP.NET Framework是如何處理一個http request.
      當你請求一個*.aspx文件的時候,同樣的這個http request會被inetinfo.exe進程截獲,她判斷文件的后綴之后,將這個請求轉交給ASPNET_ISAPI.dll,ASPNET_ISAPI.dll會通過一個被稱為Http PipeLine的管道,將請求發送給ASPNET_WP.exe進程,當這個http request進入ASPNET_WP.exe進程之后,會通過HttpRuntime來處理這個請求,處理完畢將結果返回客戶端。
      
      OK,好像并沒有太大的改進嘛,不要著急,在ASP.NET Framework中我們甚至能夠了解到HttpRuntime的細節。好,繼續深入下去:
      當Http Request進入HttpRuntime之后,會繼續進入到一個被稱之為HttpApplication Factory的一個Container中,她會給出一個HttpApplication來處理傳遞進來的請求,這個請求會依次進入如下幾個Container:HttpModule->HttpHandler Factory->HttpHandler。
      當系統內部的HttpHandler的ProcessResquest方法處理完畢之后,整個Http Request就完成了,客戶端也就得到相應的東東了。
      
      整理一下ASP.NET Framework處理一個Http Request的流程:
      
      HttpRequest-->inetinfo.exe-->ASPNET_ISAPI.dll-->Http Pipeline-->ASPNET_WP.exe-->HttpRuntime-->HttpApplication Factory-->HttpApplication-->HttpModule-->HttpHandler Factory-->HttpHandler-->HttpHandler.ProcessRequest()
      
      或許會問,我知道這個處理流程有什么用處呢?當然有用了,比如如果你想要中途截獲一個Http Request并且做些自己的處理,該如何做呢?這是下一次我們探討的東東了,下次我們詳細討論處理的細節問題。
      see you later
      
      
      
      

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>