@ WebHandler

更新:2007 年 11 月

定义 HTTP 处理程序 (.ashx) 文件的属性和编译选项。

<%@ WebHandler attribute="value" [attribute="value"...] %>

属性

  • Class
    指定将在请求处理程序时动态编译的类的名称。此值可以引用从 IHttpHandler 继承且可以包括完全限定类名的任何类。

  • 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 属性。

备注

此指令仅在用作 HTTP 处理程序的文件中有效。默认情况下,ASP.NET 将扩展名为 .ashx 的文件视为处理程序。

说明:

如果您不希望对处理程序使用 .ashx 文件扩展名,则可以创建作为标准类(.cs 或 .vb 文件)的处理程序,此标准类实现 IHttpHandler 接口。处理程序类文件不要求 @ WebHandler 指令。您然后必须使用 ASP.NET 注册首选文件扩展名。有关详细信息,请参见如何:注册 HTTP 处理程序

每个文件只能包含一条 @ WebHandler 指令。由于每个处理程序只能使用一种语言,因此每条 @ WebHandler 指令只能定义一个 Language 属性。

说明:

@ WebHandler 指令与适用于整个源文件的其他指令有许多共同的属性,例如在网页的 .aspx 文件中使用的 @ Page 指令。

若要定义 @ WebHandler 指令的多个属性,请用一个空格分隔每个属性/值对。不要在将属性与其值相连的等号 (=) 的任一侧包含空格。

示例

下面的代码示例指示 ASP.NET 页编译器使用 Visual Basic 作为内联代码语言并指定了类名。

<%@ WebHandler Language="VB" Class="MyTestHandler" %>

请参见

概念

HTTP 处理程序和 HTTP 模块概述

参考

指令语法

@ Page

IHttpHandler

Handlers