asp.net中的<%%>形式的详细用法实例讲解
asp.net中的代码分离模式我们肯定都不陌生,C#(或者其它语言)写的代码一般不会和设计语言HTML混在一起,但是有的时候也避免不了,这时就会在UI页面里用<%%>来绑定显示、绑定变量数据了,今日看到一文章专门对此进行了分析,我进行了一点修正:
一. <%%>
这种格式实际上就是和asp的用法一样的,只是asp中里面是vbs cript或者javas cript代码,而在asp.net中用的是.net平台下支持的语言。
特别注意:服务器控件中不能包含<%%>的语法,否则出错。
如下,我们可以在.aspx页面里出现如下代码: <% int a = 2; int b = 3; int c = a + b; Response.Write(c); %>
另外需要注意的是<%%>标记内的内联代码是在页面呈现的Render过程中执行的
已经接近页面生命周期的尾部。
二. <%#%>
这种格式是asp.net下特有的,它是控件数据绑定的语法,且必须要调用该控件的DataBind()方法才执行(或者整个页面Page.DataBind()也就是对所得控件都调用DataBind()方法)
特别注意:只有服务器控件才能用<%#%>的语法
<div> Server Control:<asp:TextBox ID="TextBox1" runat="server" Text="<%#text%>"></asp:TextBox><br /><!--Server Control--> Client Control:<input type="text" id="textbox2" value="<%#text%>" /><!--Client Control--> </div> 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();
} } 运行显示出来的效果
三. <%=%>
这种格式经常用到的。 <label id="label1"><%=DisplayStr()%></label><br /> <label id="label2" runat="server"><%=DisplayStr()%></label> aspx.cs代码:
public string DisplayStr()//注意这里必须要有返回值,否则将会发生运行时错误 { return "bbbb"; } 运行效果:
四. <%$%>
主要用于引用外部资源
特别注意:1.绑定的只能是服务器控件
2.只能绑定到服务器控件的某个属性上。
以下以获取web.config资源来做实例: <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> 这样就能正常运行。 如果修改aspx中的文件:使用客户端的控件
<input type="text" value="<%$ConnectionStrings:pubs%>"/> 或者:不绑定到服务器控件的某个属性上
<asp:TextBox runat="server" ID="cc"><%$ConnectionStrings:pubs%></asp:TextBox>
运行都会出现相同的错误: "分析器错误信息:不允许使用类似"<%$ConnectionStrings:pubs%>"类似的文本表达式,请改用……
最后强调:
<%#%><%#%>只针对的是服务器控件的数据绑定,因此不能同<%=%><%=%>和<%%><%%>混合使用
from:http://www.bdqn.cn/news/201303/8412.shtml
asp.net中的<%%>形式的详细用法实例讲解的更多相关文章
- asp.net中的<%%> <%#%> <%=%>形式的详细用法 (转载)
博客分类: ASP.NET 一. <%%>这种格式实际上就是和asp的用法一样的,只是asp中里面是vbscript或者javascript代码,而在asp.net中是.net平台下支 ...
- $聊一聊"驼峰"和"下划线"——Python re.sub函数详细用法实例讲解
日常写代码时候会遇到一些字符串替换的操作,比如把一大堆"驼峰"形式的字符串批量转换成下划线形式."驼峰"形式的变量命名风格在Java中很常见,而下划线形式的变量 ...
- 【转】java.util.vector中的vector的详细用法
[转]java.util.vector中的vector的详细用法 ArrayList会比Vector快,他是非同步的,如果设计涉及到多线程,还是用Vector比较好一些 import java.uti ...
- ASP.NET中的ExecuteNonQuery()方法的用法
下面我将详细讲解在机房收费系统D层中如何对数据库的增加.删除.修改,最后再来总结一下 ExecuteNonQuery(),ExecuteScalar(),ExecuteReader的用法: 一.增.删 ...
- 12个 Linux 中 grep 命令的超级用法实例
12个 Linux 中 grep 命令的超级用法实例 你是否遇到过需要在文件中查找一个特定的字符串或者样式,但是不知道从哪儿开始?那么,就请grep来帮你吧. grep是每个Linux发行版都预装的一 ...
- asp.net中生成缩略图并添加版权实例代码
这篇文章介绍了asp.net中生成缩略图并添加版权实例代码,有需要的朋友可以参考一下 复制代码代码如下: //定义image类的对象 Drawing.Image image,newimage; //图 ...
- JavaScript中字符串分割函数split用法实例
这篇文章主要介绍了JavaScript中字符串分割函数split用法,实例分析了javascript中split函数操作字符串的技巧,非常具有实用价值,需要的朋友可以参考下 本文实例讲述了JavaSc ...
- python中的formatter的详细用法
今天抽空学习了一下python中的string service中的formatter的相关用法,主要是为了让自己的代码看起来更加和谐,因为很多java或者c语言过来的开发者都不怎么爱使用python的 ...
- jquery中attr()与prop()函数用法实例详解(附用法区别)
本文实例讲述了jQuery中attr()与prop()函数用法.分享给大家供大家参考,具体如下: 一.jQuery的attr()方法 jquery中用attr()方法来获取和设置元素属性,attr是a ...
随机推荐
- oracle启动
- JSONP安全防范解决方案新思路
jsonp安全性防范,分为以下几点:1. 防止callback参数意外截断js代码,特殊字符单引号双引号,换行符均存在风险2. 防止callback参数恶意添加标签(如script),造成XSS漏洞3 ...
- java方法的重载
java方法的重载 public class Person1 { private String name; //姓名 private int age; //年龄 priva ...
- bootstrap学习笔记--bootstrap网格系统
移动设备优先 移动设备优先是 Bootstrap 3 的最显著的变化. 在之前的 Bootstrap 版本中(直到 2.x),您需要手动引用另一个 CSS,才能让整个项目友好的支持移动设备. 现在不一 ...
- 深入了解当前ETL中用到的一些基本技术
数据集成是把不同来源.格式和特点的数据在逻辑上或物理上有机地集中,从而为企业提供全面的数据共享,是企业商务智能.数据仓库系统的重要组成部分.ETL是企业数据集成的概念出发,简要分析了当前ETL中用到的 ...
- 使用java进行文件编码转换
在开发过程中,可能会遇到文件编码的转换,尽管说开发工具eclipse能够转换编码,可是有的情况却非常不方便.比方,原来文件本身的编码是GBK,如今要转换成UTF-8,假设直接在eclipse中把文件编 ...
- pip安装 MySQLDb 和 Django
wget "https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz#md5=834b2904f92d46aaa33326 ...
- 基于AFNetworking3.0网络封装
概述 对于开发人员来说,学习网络层知识是必备的,任何一款App的开发,都需要到网络请求接口.很多朋友都还在使用原生的NSURLConnection一行一行地写,代码到处是,这样维护起来更困难了. 对于 ...
- hdu2073递推题
无限的路 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submissio ...
- js--小结④
举例子,一个demo.提醒自己经常性会在onclick 和function()这两个地方出错 onclick会输少一个字母 function会忘记输括号