@ WebHandler
為 HTTP 處理常式 (.ashx) 檔案定義屬性和編譯選項。
<%@ WebHandler attribute="value" [attribute="value"...] %>
屬性
Class
指定在要求處理常式時會動態編譯的類別名稱。 這個值可以參考任何從 IHttpHandler 繼承的類別,並且可以包含完整類別名稱 (Fully Qualified Class Name)。CodeBehind
指定編譯檔的名稱,這個檔案包含與處理常式相關的類別。 在執行階段時不會使用這個屬性。注意
加入這項屬性的用意是要達到舊版 ASP.NET 的相容性。
CompilerOptions
指定包含用於編譯處理常式的選項。 在 C# 和 Visual Basic 中,這是一連串的編譯器命令列參數。 如需編譯器選項的詳細資訊,請參閱 C# 編譯器選項 和 Visual Basic 命令列編譯器。Debug
如果處理常式應以偵錯符號編譯則為 true,否則為 false。 因為這個設定會影響效能,所以應該只在開發階段將這個屬性設定為 true。Description
提供處理常式的文字描述。 ASP.NET 剖析器會忽略這個值。Language
指定在處理常式內編譯所有程式碼時使用的語言。 值可以表示任何 .NET Framework 的語言,包括 Visual Basic、C# 或 JScript。 每個處理常式只能使用一種語言。WarningLevel
表示要編譯器將警告視為錯誤的編譯器警告層級,因而造成處理常式暫停編譯。 可能的警告層級為 0 到 4。 如需詳細資訊,請參閱 WarningLevel 屬性 (Property)。
備註
這個指示詞只有在把檔案當做 HTTP 處理常式使用時有效。 根據預設,ASP.NET 會將具有 .ashx 副檔名的檔案視為處理常式。
注意
如果您不想要讓處理常式使用 .ashx 副檔名,可以將處理常式建立為實作 IHttpHandler 介面的標準類別 (即 .cs 或 .vb 檔案)。處理常式類別檔不需要使用 @ WebHandler 指示詞。接著您必須使用 ASP.NET 註冊慣用的副檔名。如需詳細資訊,請參閱 How to: Register HTTP Handlers。
在每一個檔案中只能包含一個 @ WebHandler 指示詞。 您只能為每個 @ WebHandler 指示詞定義一個 Language 屬性,因為每個處理常式只能使用一種語言。
注意
@ WebHandler 指示詞與套用至整個原始檔案的其他指示詞一樣具有數個屬性,例如用於 Web 網頁之 .aspx 檔案的 @ Page 指示詞。
若要為 @ WebHandler 指示詞定義多個屬性,請以單一空格分隔每個屬性/值組。 請勿在連接屬性以及其值的等號 (=) 任何一邊包含空格。
範例
下列程式碼範例會指示 ASP.NET 網頁編譯器使用 Visual Basic 做為內嵌程式碼語言,並指定類別名稱。
<%@ WebHandler Language="VB" Class="MyTestHandler" %>