亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET處理程序的執行方法是什么

發布時間:2021-12-06 15:32:34 來源:億速云 閱讀:148 作者:iii 欄目:編程語言

這篇文章主要介紹“ASP.NET處理程序的執行方法是什么”,在日常操作中,相信很多人在ASP.NET處理程序的執行方法是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”ASP.NET處理程序的執行方法是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

ASP.NET運行時對HTTP處理程序的使用方式

無論你是否相信,ASP.NET都使用HTTP請求實現了大量的自己的功能。ASP.NET使用處理程序來處理.aspx、.asmx、.soap和其它ASP.NET文件。

下面是machine.config文件中的一個片段:

<httpHandlers>  <add verb="*" path="trace.axd" type="System.Web.Handlers.TraceHandler"/>  <add verb="*" path="*.aspx" type="System.Web.UI.PageHandlerFactory"/>  <add verb="*" path="*.ashx" type="System.Web.UI.SimpleHandlerFactory"/>  <add verb="*" path="*.config" type="System.Web.HttpForbiddenHandler"/>  <add verb="GET,HEAD" path="*" type="System.Web.StaticFileHandler"/>   . . . . . .    . . . . . .  </httpHandlers>

在上面的配置信息中你可以看到對.aspx文件的所有請求都由System.Web.UI.PageHandlerFactory類來處理。與此類似,對.config文件和其它文件(它們不能被客戶端直接訪問)的所有請求都由System.Web.HttpForbiddenHandler類處理。你可能已經猜到,當訪問這些文件的時候,該類簡單地給客戶端返回一個錯誤信息。

執行HTTP處理程序

現在你將看到如何實現一個HTTP處理程序。那么我們的新處理程序要做什么任務呢?前面我提到,處理程序大多數用于給Web服務器添加新功能;因此,我將建立一個處理程序來處理新的文件類型——擴展名為.15seconds的文件。我們建立了這個處理程序并在我們的Web應用程序的web.config文件中注冊之后,所有對.15seconds文件的請求都將由這個新處理程序來處理。

你可能正在考慮這個處理程序的使用方法。如果你希望引入一種新的服務器腳本語言或動態服務器文件(例如asp、aspx)該怎么辦呢?你可以為它編寫一個自己的處理程序。類似地,如果你希望在IIS上運行Java小程序、JSP和其它一些服務器端Java組件應該怎么辦呢?一種方法是安裝某些ISAPI擴展(例如Allaire或Macromedia Jrun)。你也可以編寫自己的HTTP處理程序。盡管這對于第三方廠商(例如Allaire和Macromedia)來說是很復雜的事務,但是它卻是個很有吸引力的選擇,因為它們的HTTP處理能夠能夠訪問ASP.NET運行時暴露的所有新功能。

實現我們的HTTP處理程序包含以下步驟:

1.編寫一個實現IHttpHandler接口的類。

2. 在web.config或machine.config文件中注冊這個處理程序。

3.在Internet服務管理器中把文件擴展(.15seconds)映射到ASP.NET ISAPI擴展DLL(aspnet_isapi.dll)上。

***步

在Visual Studio.NET中建立一個新的C#類庫項目,并把它命名為“MyHandler”。Visual Studio.NET將自動地給項目添加一個叫做“Class1.cs”的類。把它改名為“NewHandler”;在代碼窗口中打開這個類,并把類的名稱和構造函數的名稱改成“NewHandler”。

下面是NewHandler類的代碼:

using System;  using System.Web;   namespace MyHandler  {   public class NewHandler : IHttpHandler   {  public NewHandler()  {   // TODO: 此處添加構造邏輯  }   #region Implementation of IHttpHandler  public void ProcessRequest(System.Web.HttpContext context)  {   HttpResponse objResponse = context.Response ;   objResponse.Write("<html><body><h2>Hello 15Seconds Reader ") ;   objResponse.Write("</body></html>") ;  }   public bool IsReusable  {   get   {  return true;   }  }  #endregion   }  }

你在ProcessRequest方法中可以看到,該HTTP處理程序通過System.Web.HttpContext對象訪問了所有作為參數傳遞給它的ASP.NET內部對象。實現ProcessRequest方法只需要簡單地從context對象中提取HttpResponse對象并把發送一些HTML給客戶端。類似地,IsReusable返回true,表明這個處理程序可以被重復用作處理其它的HTTP請求。

我們編譯上面的代碼并把它放到webapp虛擬目錄的bin目錄之中。

第二步

在web.config文件中通過添加下面的文本來注冊這個處理程序:

<httpHandlers>  <add verb="*" path="*.15seconds" type="MyHandler.NewHandler,MyHandler"/>  </httpHandlers>

第三步

由于我們已經建立了用于處理新擴展文件的處理程序了,我們還需要把這個擴展名告訴IIS并把它映射到ASP.NET。如果你不執行這個步驟而試圖訪問Hello.15seconds文件,IIS將簡單地返回該文件而不是把它傳遞給ASP.NET運行時。其結果是該HTTP處理程序不會被調用。

運行Internet服務管理器,右鍵點擊默認Web站點,選擇屬性,移動到Home目錄選項頁,并點擊配置按鈕。應用程序配置對話框彈出來了。點擊添加按鈕并在可執行字段輸入aspnet_isapi.dll文件路徑,在擴展字段輸入.15seconds。其它字段不用處理;該對話框如下所示:

ASP.NET處理程序的執行方法是什么

點擊確認按鈕關閉應用程序配置和默認Web站點屬性對話框。

現在我們運行Internet Explorer并輸入url:http://localhost/webapp/hello.15seconds,看到的頁面如下: 

ASP.NET處理程序的執行方法是什么

到此,關于“ASP.NET處理程序的執行方法是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

莱州市| 平乐县| 临颍县| 获嘉县| 深圳市| 江源县| 新田县| 庆阳市| 奇台县| 梨树县| 深州市| 汤阴县| 石台县| 邢台市| 和政县| 永善县| 潼南县| 衡水市| 岑溪市| 手游| 北流市| 正蓝旗| 灵山县| 丰镇市| 寻乌县| 西乌| 宁远县| 凤凰县| 香格里拉县| 禹城市| 元谋县| 措勤县| 偏关县| 南丹县| 玉林市| 惠水县| 西吉县| 裕民县| 龙门县| 金门县| 苗栗市|