@ 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" %>

請參閱

參考

文字範本指示詞語法

@ Page

IHttpHandler

Handlers

概念

HTTP Handlers and HTTP Modules Overview