ASP.NET中的<%%>,<%=%>,<%#%>,<%$%>
来源:互联网 发布:js 时间戳格式化函数 编辑:程序博客网 时间:2024/05/18 23:14
在asp.net中经常出现包含这种形式<%%>的html代码,总的来说包含下面这样几种格式:
一.<%%>
这种格式实际上就是和asp的用法一样的,只是asp中里面是vbscript或者javascript代码,而在asp.net中是.net平台下支持的语言。
特别注意:服务器控件中不能有<%%>语法
(这里用C#代码)
<%
int a = 2;
int b = 3;
int c = a + b;
Response.Write(c);
%>
二. <%#%>
如果是这种格式的话那就是asp.net下特有的,它是控件数据绑定的语法,且必须要调用该控件的DataBind()方法才执行(或者整个页面Page.DataBind()也就是对所得控件都调用DataBind()方法
,在这种情况下不管是服务器控件还是客户端控件都会绑定).
特别注意:只有服务器控件才能用<%#%>语法(不准确的),当整个页面调用this.DataBinder()方法时,不管是服务器控件还是客户端控件都会绑定
<div>
Server Control:
<asp:TextBox ID="TextBox1" runat="server" Text="<%#text%>"></asp:TextBox>
aspx.cs代码如下:
protected string text; //注意这里必须申明为public或protected,否则aspx页面(子类)无法访问
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
this.text = "aaaaaaaaaaaaa";
this.TextBox1.DataBind();//或this.DataBind();
}
}
三.<%=%>
这种形式实际上是由<%%>扩展而来的.等价于:Response.Write(<%%>)这种形式(不标准,但能看明白),它其实也可以看成是一种绑定.
aspx代码:
<asp:Label ID="Label1" runat="server" Text="Label"><%=DisplayStr()%></asp:Label>
aspx.cs代码:
public string DisplayStr()//注意这里必须要有返回值,否则将会发生运行时错误
{
return "bbbb";
}
四.<%$%>
这种形式主要用于对web.config文件的键值对进行绑定:通常用于连接数据库的字符串
特别注意:1.绑定的只能是服务器控件
2.只能绑定到服务器控件的某个属性上。
<asp:TextBox runat="server" ID="cc" Text="<%$ConnectionStrings:pubs%>"></asp:TextBox>
web.config文件如下:
<connectionStrings>
<add name="pubs" connectionString="Server=.;database=pubs;uid=sa;pwd=" providerName="System.Data.SqlClient"/>
</connectionStrings>
这样就能正常运行。
简单的说:
是数据绑定表达式
<%#%>:绑定数据
是内嵌服务器输出块,就是直接输出内部的表达式
<%=%>:输出数据
是内嵌服务器解释的代码块,就是直接执行内部的表达式
<%%> :嵌套后台代码编写
一.<%%>
这种格式实际上就是和asp的用法一样的,只是asp中里面是vbscript或者javascript代码,而在asp.net中是.net平台下支持的语言。
特别注意:服务器控件中不能有<%%>语法
(这里用C#代码)
<%
int a = 2;
int b = 3;
int c = a + b;
Response.Write(c);
%>
二. <%#%>
如果是这种格式的话那就是asp.net下特有的,它是控件数据绑定的语法,且必须要调用该控件的DataBind()方法才执行(或者整个页面Page.DataBind()也就是对所得控件都调用DataBind()方法
,在这种情况下不管是服务器控件还是客户端控件都会绑定).
特别注意:只有服务器控件才能用<%#%>语法(不准确的),当整个页面调用this.DataBinder()方法时,不管是服务器控件还是客户端控件都会绑定
<div>
Server Control:
<asp:TextBox ID="TextBox1" runat="server" Text="<%#text%>"></asp:TextBox>
aspx.cs代码如下:
protected string text; //注意这里必须申明为public或protected,否则aspx页面(子类)无法访问
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
this.text = "aaaaaaaaaaaaa";
this.TextBox1.DataBind();//或this.DataBind();
}
}
三.<%=%>
这种形式实际上是由<%%>扩展而来的.等价于:Response.Write(<%%>)这种形式(不标准,但能看明白),它其实也可以看成是一种绑定.
aspx代码:
<asp:Label ID="Label1" runat="server" Text="Label"><%=DisplayStr()%></asp:Label>
aspx.cs代码:
public string DisplayStr()//注意这里必须要有返回值,否则将会发生运行时错误
{
return "bbbb";
}
四.<%$%>
这种形式主要用于对web.config文件的键值对进行绑定:通常用于连接数据库的字符串
特别注意:1.绑定的只能是服务器控件
2.只能绑定到服务器控件的某个属性上。
<asp:TextBox runat="server" ID="cc" Text="<%$ConnectionStrings:pubs%>"></asp:TextBox>
web.config文件如下:
<connectionStrings>
<add name="pubs" connectionString="Server=.;database=pubs;uid=sa;pwd=" providerName="System.Data.SqlClient"/>
</connectionStrings>
这样就能正常运行。
简单的说:
是数据绑定表达式
<%#%>:绑定数据
是内嵌服务器输出块,就是直接输出内部的表达式
<%=%>:输出数据
是内嵌服务器解释的代码块,就是直接执行内部的表达式
<%%> :嵌套后台代码编写
0 0
- ASP.NET中的<%%>,<%=%>,<%#%>,<%$%>
- asp.net中的asp:RadioButtonList
- ASP.NET 中的AutoEventWireup="false"
- asp.net中的type="text/css"
- asp.net中的runat="server" 属性
- asp.net中的<% %>,<%= %>,<%# %><%$ %>的使用
- Asp.net中的线程
- ASP.NET中的ViewState
- ASP.NET中的ViewState
- asp.net中的会话
- asp.net中的codebehind
- asp.net中的session
- ASP.NET中的OutOfMemoryException
- ASP.NET中的ViewState
- ASP.NET中的OutOfMemoryException
- asp.net中的session
- ASP.NET中的XML
- ASP.NET中的TabStrip
- php相关
- C++ Socket 编程
- android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or da
- grails学习笔记-2、开发环境搭建
- jsb 多点与单点触摸设置
- ASP.NET中的<%%>,<%=%>,<%#%>,<%$%>
- C语言文件操作
- 利用Instant Client ,不安装oracle客户端使用sqlplus连接远程数据库的步骤
- vagrant 打包问题
- select2插件的使用
- SiteMesh的使用
- Secondary Namenode摘记
- android NDK笔记
- Ubuntu中Nginx的安装与配置