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