asp.net中关于<% %>、<%= %>的用法总结 .
2013-04-22 14:49
429 查看
1:在.aspx页面,<% %>标签相当于在.cs页面的代码,也就是说你在.cs文件里面怎样写,就可以在.aspx文件里面的<% %>标签里面怎样写。
2:在.aspx页面,<%= %>标签可以调用你的后台的变量或者方法等,不过被调用的方法必须是public的。
如果你的Default.cs文件里面有:
public string str = "调用后台方法!";
public string GetStr()
{
return "调用后台方法!";
}
那么你的Default.aspx文件里面就可以这样写:
<asp:Label ID="Label2" runat="server" Text='<%=str%>'></asp:Label>
<asp:Label ID="Label1" runat="server" Text='<%= GetStr() %>'></asp:Label>
3:<%#Eval() %>与<%#Bind() %>,这两者的使用方法非常相似,目前我只发现一点区别:
相同点:
1,两者都是绑定数据源的方法,比如说你想将数据库中的某个字段绑定到页面上的某个Label上,就有代码:
<asp:Label ID="Label1" runat="server" Text='<%#Eval("pSex") %>'></asp:Label>或者
<asp:Label ID="Label1" runat="server" Text='<%#Bind("pSex") %>'></asp:Label>此时两者的效果是一样的。
不同点:
1:如果在绑定数据的同时还要调用后台(.cs文件)的方法,举个例子,需要绑到页面上的字段数据太长,所以必须截断,此时可以调用后台的方法来实现,例子部分代码:
.cs文件:
//字符太长将截断,用“···”代替。
public string Replace(string str)
{
if (str.Length > 20)
{
str = str.Substring(0, 10) + "···";
}
return str;
}
.aspx文件:
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Replace(Eval("pPassWord").ToString()) %></asp:TextBox>
注意,此时只能用Eval方法,因为Eval方法调用了.ToString()方法,而Bind却不能调用此方法。。。
2:在.aspx页面,<%= %>标签可以调用你的后台的变量或者方法等,不过被调用的方法必须是public的。
如果你的Default.cs文件里面有:
public string str = "调用后台方法!";
public string GetStr()
{
return "调用后台方法!";
}
那么你的Default.aspx文件里面就可以这样写:
<asp:Label ID="Label2" runat="server" Text='<%=str%>'></asp:Label>
<asp:Label ID="Label1" runat="server" Text='<%= GetStr() %>'></asp:Label>
3:<%#Eval() %>与<%#Bind() %>,这两者的使用方法非常相似,目前我只发现一点区别:
相同点:
1,两者都是绑定数据源的方法,比如说你想将数据库中的某个字段绑定到页面上的某个Label上,就有代码:
<asp:Label ID="Label1" runat="server" Text='<%#Eval("pSex") %>'></asp:Label>或者
<asp:Label ID="Label1" runat="server" Text='<%#Bind("pSex") %>'></asp:Label>此时两者的效果是一样的。
不同点:
1:如果在绑定数据的同时还要调用后台(.cs文件)的方法,举个例子,需要绑到页面上的字段数据太长,所以必须截断,此时可以调用后台的方法来实现,例子部分代码:
.cs文件:
//字符太长将截断,用“···”代替。
public string Replace(string str)
{
if (str.Length > 20)
{
str = str.Substring(0, 10) + "···";
}
return str;
}
.aspx文件:
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Replace(Eval("pPassWord").ToString()) %></asp:TextBox>
注意,此时只能用Eval方法,因为Eval方法调用了.ToString()方法,而Bind却不能调用此方法。。。
相关文章推荐
- asp.net中关于&lt;% %&gt;、&lt;%= %&gt;的用法——个人总结
- asp.net中关于<% %>、<%= %>的用法
- asp.net中关于<% %>、<%= %>的用法
- <转>ASP.NET MVC HtmlHelper用法大全
- ASP.NET MVC (Razor)开发 <<周报与绩效考核系统>> 总结与分享
- asp.net <%%>&<%#%>&<%=%>&<%@%>&<%$%>用法区别
- asp.net的<% %>总结
- asp.net <%%>&<%#%>&<%=%>&<%@%>&<%$%>用法区别
- [转] asp.net <%%>&<%#%>&<%=%>&<%@%>&<%$%>用法区别
- asp.net的<% %>总结
- asp.net <%%>&<%#%>&<%=%>&<%@%>&<%$%>用法区别
- asp.net <%%> <%#%><%=%><%@%><%$%>用法区别
- asp.net <%%>&<%#%>&<%=%>&<%@%>&<%$%>用法区别
- asp.net中的<%%>用法
- Asp.Net中几种相似的标记符号: < %=...%>< %#... %>< % %>< %@ %>解释及用法
- asp.net中的<%%>的几种形式的用法
- asp.net <%%>&<%#%>&<%=%>&<%:%>&<%@%>&<%$%>用法区别
- [转]asp.net 前台绑定后台变量方法总结:<%= %> 和<%# %>的区别
- Asp.Net中几种相似的标记符号: <%=...%>< %#...%>< %%>< %@ %>解释及用法
- asp.net中<%%>形式的用法(原创)