background image

ASP.NET 页面指令详解 

 

当使用指令时,虽然标准的做法是将指令包括在文件的开头,但是它们可以位于 .aspx 或 
.ascx 文件中的任何位置。每个指令都可以包含一个或多个特定于该指令的属性(与值成对
出现)。
注意   @ Page 

 

指令只能在 .aspx 

 

文件中使用,而 @ Control 

 

指令只能在 .ascx 文件中使用。

Web 窗体页框架支持以下指令。
ASP.NET 中的常用指令
@ Page 

 

定义 ASP.NET 

 

页分析器和编译器使用的页特定属性。只能包含在 .aspx 文件中。 

@ Control 

 

定义 ASP.NET 

 

页分析器和编译器使用的控件特定属性。只能包含在 .ascx 文件

(用户控件)中。 
@ Import 将命名空间显式导入页或用户控件中。 
@ Implements 

 

以声明的方式指示页或用户控件实现指定的 .NET Framework 接口。 

@ Register 将别名与命名空间及类名关联起来,从而允许用户控件和自定义服务器控件在被
包括到请求的页或用户控件时呈现。 
@ Assembly 以声明的方式将程序集链接到当前页或用户控件。 
@ OutputCache 以声明的方式控制页或用户控件的输出缓存策略。 
@ Reference 以声明的方式将页或用户控件链接到当前页或用户控件。
ASP.NET 

 

将不包含显式指令名的任何指令块 (<%@ %>) 

 

都当做 @ Page 指令(用于页)或 

@ Control 指令(用于用户控件)处理。
@ Page 常见属性
AspCompat 

 

当设为 true 

 

时,允许在单线程单元 (STA) 

 

线程上执行页。这允许页调用 STA 组件,例如用 

Microsoft Visual Basic 6.0 

 

开发的组件。将该属性设为 true 

 

还允许页调用 COM+ 1.0 组件,

 

该组件要求可以访问非托管 Active Server Pages (ASP) 

 

内置对象。通过 ObjectContext 对

 

象或 OnStartPage 

 

方法可以访问它们。默认值为 false。 

注意   

 

将该属性设为 true 可能导致页的性能降低。有关详细信息,请参见备注部分。

AutoEventWireup 

 

指示页的事件是否自动连网。如果启用事件自动连网,则为 true

 

;否则为 false。默认值为 

true

 

。有关更多信息,请参见 Web 服务器控件事件模型。 

Buffer 

 

确定是否启用 HTTP 

 

响应缓冲。如果启用页缓冲,则为 true

 

;否则为 false。默认值为 

true。 
ClassName 
指定在请求时将自动进行动态编译的页的类名。该值可以是任何有效的类名,但不应包括命
名空间。 
ClientTarget 

 

指示 ASP.NET 服务器控件应该为其呈现内容的目标用户代理。该值可以是任何有效的用户代
理或别名。 
CodeBehind 

 

指定包含与页关联的类的已编译文件的名称。该属性由 Visual Studio .NET Web 窗体设计
器使用。设计器从该属性中获取页类的位置,以便创建页类的实例供您设计时使用。例如,

 

如果在 Visual Studio 

 

中创建名为 WebForm1   

的 Web 

 

窗体页,对于 Visual Basic,设计器

 

将指定 Codebehind 

 

属性值为 WebForm1.aspx.vb

 

,对于 C# 

 

则为 WebForm1.aspx.cs。

该属性不能在运行时使用。 
CodePage 
指示响应的代码页值。 
注意   

 

如果创建 Web 

 

窗体页时使用的代码页不是将运行该页的 Web 服务器上的默认代码页,

则必须设置此属性。输入的值应该是在其上创建该页的计算机的代码页。有关代码页的更多