20140527-ASP.NET中尖括号百分号用法

1、<%=%>
里面放的变量名,如:
<div>
<h1>Hello
World</h1>
<p>Welcome to Beginning ASP.NET 3.5 on
<%=
DateTime.Now.ToString()
%></p>
</div>
输出结果为:
Hello World
Welcome to Beginning
ASP.NET 3.5 on 2009-11-10 15:53:08
 
2、 <%#%>
这里是数据的绑定
一般在asp:repeater、datalist等asp容器内使用,通过如repeater.datasource=DataSet;repeater.Bind();绑定容器和数据源。
如:<%#
DataBinder.(Container.DataItem, "ClassName") %>
完整代码: 
<asp:DataList ID="ClassList" runat="server">
<ItemTemplate>
<%# DataBinder.(Container.DataItem, "ClassName")
%>
</ItemTemplate>
</asp:DataList></td>
 
3、<%@
%> 表示:引用
如在很多.aspx页面中,都可以看到如下的代码:
<%@ Page Language="C#"  
CodeFile="Default.aspx.cs" Inherits="_Default" %>
 
4、<%:
%>
这种方式是ASP.NET4.0中新加入的绑定方式,常用于MVC中,但普通webform中也可使用。他的功能其实就是对绑定的值进行一下编码,因此,一下两者是等同的:
 <%=
Server.HtmlEncode("<b>test</b>") %>
 <%:
"<b>test</b>"
%>;
 
5、<%%>中间一般放函数或者方法,典型的asp程序写法。
在百分号內 ,
如果百分号后面不带任何符号(冒号、等号、井号) ,
即表示要执行一段代码而已,此处不包含任何输出信息;若带符号,即表示执行此处的代码,并且将执行后返回的值绑定(或者显示)在此处。
例如:<tr
bgcolor="#ffffff">
<td height="20">
<div
align="center">类别:</div>
</td>
<td
height="9">&nbsp;
<%ST_getList();%>
</td>
</tr>
 
6、<%=
%>和<%# %>有点区别。
   
在后台代码中,与第一种方式唯一不同的,就是需要调用DataBind方法。只有执行了相应控件的DataBind方法,前台代码中这些控件中使用<%#
%>的绑定才会发生(并且控件内部的所有绑定也会发生,比如又嵌套了一个绑定后台数据的控件),否则得话将不会被赋值,而是默认空值。上面我们用的是Page的DataBind方法,那么整个页面所有绑定都会执行。当然,如果我们只执行DataList1或者DropDownList1的DataBind方法,那么只有相应控件的绑定才会发生。需要注意的是,这里说的需要执行DataBind包括了显示和隐式执行,有些数据绑定类控件,当它们通过
DataSourceID 属性绑定到数据源控件时,会通过隐式调用 DataBind
方法来执行绑定。这时就不必显示的再次调用了。
 
    两者区别:
   
两种绑定方式上,他们的约束基本相同,都要求与属性匹配,出现在他们可以出现的位置。后者的使用位置更广泛,尤其是支持服务器端控件和绑定数据集合。后台代码方面,后者需要调用DataBind才能完成绑定,前者则没有这方面要求。这里主要区别一下两者在执行机制上的区别:<%=...%>是在程序执行时调用(应该是在页面的RenderControl事件过程中完成的,也就是通常情况下我们可以看到的后台代码都执行完毕后再去到前台代码中进行赋值绑定),而<%#...
%>是在DataBind()方法之后被调用,一旦调用了DataBind(),则它对应的控件将绑定变量,因此,请注意:如果在DataBind()后再修改变量,那么绑定的就不是最新值了,这就需要在完成变量的赋值后,再去DataBind()。其实这两种方式,它的运行过程可以在VS中通过设置断点来看看,看两者的绑定赋值分别是在什么时候发生的。

From:
www.xuebuyuan.com/120151.html

20140527-ASP.NET中尖括号百分号用法,布布扣,bubuko.com

时间: 2024-10-13 15:43:14

20140527-ASP.NET中尖括号百分号用法的相关文章

ASP.NET 尖括号 百分号 井号 等号 的用法

1.<%=%>  尖括号 百分号 等号 里面放的变量或方法,如: <div> <h1>Hello World</h1> <p><%= ShowHelloWorld() %></p> </div> 2. <%#%> 尖括号 百分号 井号 这里是数据的绑定 如:<%# DataBinder.(Container.DataItem, "ClassName") %> <

asp.net中Page.ClientScript.RegisterStartupScript用法小结(转)

//ASP.NET后台页面跳转 Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>if(confirm('保存成功!是否继续添加?')){location.href='ProductonAdd.aspx'}else{location.href='ProductonList.aspx'}</script>"); //后台弹出确定框 ClientScript.

ASP.NET中application对象的用法(面试题)

ASP.NET中application对象的用法 本文导读:Application对象是HttpApplicationState类的一个实例,Application状态是整个应用程序全局的.Application对象在服务器内存中存储数量较少又独立于用户请求的数据.由于它的访问速度非常快而且只要应用程序不停止,数据一直存在,我们通常在Application_Start的时候去初始化一些数据,在以后的访问中可以迅速访问和检索. 一.Application对象的理解 Application对象在实际

谨慎Asp.net中static变量的用法

在.Net平台下进行CS软件开发时,我们经常遇到以后还要用到某些变量上次修改后的值,为了简单起见,很多人都习惯用static来定义这些变量,我也是.这样非常方便,下一次调用某个函数时该变量仍然保存的是处理过的值,直接拿来用就可以了. 现在转入了BS软件开发,我们很自然地会沿用这种习惯.如在页面中统计某个按钮被按下的次数,先在类中OnClick事件的处理过程前定义一static变量times,则每次调用该按钮的OnClick事件时,令times增1即可,非常方便: [C#]: ... static

C头文件中尖括号与双引号的区别

2.1 Include Syntax Both user and system header files are included using the preprocessing directive ‘#include’. It has two variants: #include <file> This variant is used for system header files. It searches for a file named file in a standard list o

ASP.NET 内联代码、内联表达式、数据绑定表达式使用方法罗列(形式就是常说的尖括号 百分号 等于号 井号)

今天在做渭南电脑维修网的一个小功能时遇到了一些问题,因此特别列出,以备他日之用. 首先对ASP.NET 内联代码.内联表达式.数据绑定表达式的概念进行罗列,详细概念以及基本的用法我就不在这里罗嗦了,请参照MSDN详细介绍,以下是列表: 1.<% inline code %>:内联代码 2.<%=inline expression %>:内联表达式 3.<%# data-binding expression %>:数据绑定表达式 内联代码我很少使用,所以也没什么心得可以拿

案例讲解asp.net中jquery post的用法

一.post案例: 1.前台default.aspx: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>$.post发送请求</title> <script type="text/javascript" src="Jscript/jquery-1.4.2-vsdoc.js"> </script> <sc

Asp.Net中索引器的用法

索引器定义类似于属性,但其功能与属性并不相同.索引器提供一种特殊的方法编写get和set访问器.属性可以像访问字段一样访问对象的数据,索引器可以使用户像访问数组一样访问类成员. 一.索引器特性 1.get 访问器返回值.set 访问器分配值.2.this 关键字用于定义索引器. 3.value 关键字用于定义由 set 索引器分配的值.4.索引器不必根据整数值进行索引,由您决定如何定义特定的查找机制. 5.索引器可被重载.6.索引器可以有多个形参,例如当访问二维数组时.7.索引器使得对象可按照与

asp.net中Page.ClientScript.RegisterStartupScript用法小结

ClientScript.RegisterStartupScript(Page.GetType(), "Show", "alert('" + l_strConferenceNo + "');",true);原型如下 ClientScript.RegisterStartupScript(Type type, string key, string script,bool addScriptTags);区别是bool addScriptTags为tru