ASP.NET页面指令
ASP.NET页面通常也包含一些指令,允许用户为相应页指定页的属性和配置信息。
这些指令,由ASP.NET作为处理页面的指令,但是,不作为发送到浏览器标记的一部分呈现。
指令的使用
标准的用法,是将指令包括在文件的开头,但是,它们可以位于.aspx或.ascx文件中的任何位置。
每个指令都可以包含一个或多个特定于该指令的属性,属性名和值成对出现。
ASP.NET常用指令
@Page——定义ASP.NET页分析器和编译器使用的页特定属性,只能包含在.aspx文件中。
语法为
<%@Pageattribute="value" [sttribute="value"……]%>
@Control——定义ASP.NET页分析器和编译器使用的控件特定属性,只能包含在.ascx文件用户控件中。
语法为
<%@Controlattribute="value" [attribute="value"……]%>
@Import——将命名空间显式导入页或用户控件中。
语法为
<%@Importnamespace="value"%>
@Implements——以声明的方式指示页或用户控件实现指定的.NET Framework接口。
语法为
<%@Implementsinter%>
@Register——将别名与命名空间及类名关联起来,从而允许用户控件和自定义服务器控件在被包括到请求的页或用户控件时呈现。
语法为
<%@Registertagprefix="tagprefix" Namespace="namespace"Assembly="assembly"%>或者
<%@Registertagprefix="tagprefix" Tagname="tagname"Src="pathname"%>
@Assembly——以声明的方式将程序集连接到当前页或用户控件。
语法为
<%@AssemblyName="assemblyname"%>或者
<%@AssemblySrc="pathname"%>
@OutputCache——以声明的方式控制页或用户控件的输出缓存策略。
语法为
<%@OutputCache Duration="#ofseconds"Location="Any|Client|DownStream|Server|None"Shared="True|False" VaryByControl="controlname"VaryByCustom="browser|customstring" VaryByHeader="headers"VaryByParam="parametername"%>
@Reference——以声明的方式将页或用户控件链接到当前页或用户控件。
语法为
<%@Referencepage|control="pathtofile"%>
注意
@Page指令只能在.aspx文件中使用
@Control指令只能在.ascx文件中使用
ASP.NET将不包含显式指令名的任何指令块(<%@%>),都当做@Page指令用于页或@Control指令用于用户控件处理。