ASP.NET指令简介

16 篇文章 0 订阅
7 篇文章 0 订阅
  

ASP.NET指令是以字符“@”开头。分析器或编译器在分析或编译页(包括窗体页和母版页)、用户控件或其他资源文件时,页、控件或文件可以通过ASP.NET指令指定编译器的属性。当分析器或编译器在处理页、控件或文件时,这些设置生效。通常,这些指令需要包含在页、控件或文件的开头处。每个指令都可以包含一个或多个属性(与值成对出现)。

1页指令==========@Page

分析器或编译器在分析或编译页时,可以通过@Page指令设置分析器和编译器的属性。该指令只能包含在文件扩展名为.aspx的文件中,声明其语法如下:

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

@Page指令只能使用在Web窗体页(.aspx)中,且每个页只能包含一条@Page指令。当Web窗体页使用该指令时,它至少要包含一个属性。

2用户控件指令=========@Control

分析器或编译器在分析或编译用户控件(.ascx)时,可以通过@Control指令设置分析器和编译器的属性。该指令只能在用户控件上使用,且一个用户控件只能包含一条@Control指令。声明@Control指令的语法如下:

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

3注册指令==================@Register

@Register指令提供了引用用户控件或自定义控件的方法,并引用这些控件的文件(页或者控件)能够使用被引用的控件。换句话说,该指令创建一个标记前缀,实现被引用的控件和其引用文件之间的关联。最终,使得控件能够在其引用文件中呈现出来。

4引用指令===============@Reference

@Reference指令将指定的页或用户控件链接到当前页或用户控件,即在指定的页或用户控件和当前页或用户控件之间建立动态连接。声明该指令的语法如下:

<%@ Reference Page="页的路径"

Control="用户控件的路径"

virtualPath="文件的虚拟路径" %>

5母版页指令==========@Master

分析器或编译器在分析或编译母版页(.master)时,可以通过@Master指令设置分析器和编译器的属性。该指令只能在母版页上使用,且一个母版页只能包含一条@Master指令。声明@Master指令的语法如下:

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

6母版页类型指令=============@MasterType

@MasterType指令提供创建对该母版页(.master)的强类型引用的方法。声明该指令的语法如下:

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

@MasterType指令包含两个属性:TypeNameVirtualPath。其中,TypeName属性指定母版页的类型的名称;VirtualPath属性指定生成强类型引用的文件的路径,它的值为相对路径。

7上一页类型指令=======@PreviousPageType

@PreviousPageType指令提供了获取上一页(当前页的Page对象的PreviousPage属性的值)的强类型的方法。它只能使用在Web窗体页(.aspx)上,声明该指令的语法如下:

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

@PreviousPageType指令包含两个属性:TypeNameVirtualPath。其中,TypeName属性指定上一页的类型的名称;VirtualPath属性指定生成强类型引用的文件的路径,它的值为相对路径。一般情况下,TypeNameVirtualPath属性不能同时使用。下面的代码示例设置了生成强类型的文件的VirtualPath属性的值为“~/OtherPreviousPageType.aspx”。

<%@ PreviousPageType VirtualPath="~/OtherPreviousPageType.aspx" %>

8输出缓冲指令============@OutputCache

@OutputCache指令设置Web窗体页或用户控件的输出缓存策略。

9导入指令==========@Import

@Import指令将命名空间导入到文件中,使得该文件可以使用导入的命名空间中的类和接口。它不但可以导入.NET框架类库中的命名空间,而且可以导入用户自定义的命名空间。声明该指令的语法如下:

<%@ Import namespace="value" %>

10程序集指令===========@Assembly

@Assembly指令将程序集(.dll)链接到当前页,使得当前页可以使用程序集中的类和接口。声明该指令的语法如下:

<%@ Assembly Name="assemblyname" %>

<%@ Assembly Src="pathname" %>

11执行指令=====@Implements

@Implements指令指定当前文件(如Web窗体页、用户控件等)需要实现的.NET框架类库中的接口。如果用户在文件中需要实现接口时,用户必须在<script>标记中实现接口所需要的方法和属性。若文件需要实现多个接口,则可以在该文件上多次使用@Implements指令。@Implements指令只包含一个属性:interface。该属性表示当前文件需要实现的接口的名称。声明@Implements指令的语法如下:

<%@ Implements interface="MyValidInterfaceName" %>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值