【.NET】<% %>的使用
来源:互联网 发布:全国人口普查数据查询 编辑:程序博客网 时间:2024/06/06 09:56
asp.net中的代码分离模式我们肯定都不陌生,c#(或者其它语言)写的代码一般不会和设计语言html混在一起,但是有的时候也避免不了,这时就会在UI页面里用<%%>来绑定显示、绑定变量数据了。
一、 <%%>
这种格式实际上javascript有异曲同工之妙。
特别注意:服务器控件中不能包含<%%>的语法,否则出错。
如下,我们可以在.aspx页面里出现如下代码:
<%int a = 2;int b = 3;int c = a + b;Response.Write(c);%>
二、 <%#%>
这种格式是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(); }}
三、 <%=%>
是用来绑定后台的变量或方法,且必须有返回值,但此时的变量名或方法的访问修饰符为public或protected
<label id="label1"><%=DisplayStr()%></label><br /><label id="label2" runat="server"><%=DisplayStr()%></label>aspx.cs代码:public string DisplayStr()//注意这里必须要有返回值,否则将会发生运行时错误{return "bbbb";}四、<%$%>
主要用于引用外部资源
特别注意:绑定的只能是服务器控件,且只能绑定到服务器控件的某个属性上。
比如:<%$ Resources:Global, PTS_ProblemCodeShort%>它的意思就是访问Global.resx中的PTS_ProblemCodeShort
以下以获取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%>"类似的文本表达式,请改用……
五、<%@%>
<%@%>这一种ASP预格式,实际上是使用前对你的文件进行一些约束或是约定!常见于.net文件开始的地方。这种格式接近于指令,所以有人称其为伪指令。主要用来提供整个JSP网页相关的信息,并且用来设定JSP网页的相关属性。
例如:网页的编码方式、语法、信息等。
常用的有:page、register、include 和taglib,每一种指令都有各自的属性。
page指令是最复杂的JSP指令,它的主要功能为设定整个JSP 网页的属性和相关功能。
include 指令表示:在JSP编译时插入一个包含文本或代码的文件,这个包含的过程是静态的,而包含的文件可以是JSP 网页、HTML网页、文本文件,或是一段Java 程序。
taglib 指令能够让用户自定义新的标签。
register 指令表示:注册一个自定义的控件
总结
这些东西都很基础,需要去积累
分享:关于<%@ %>的详细介绍
- Net命令的使用
- ASP.NET的使用
- net use 的使用
- json.net的使用
- dictionary的使用.net
- lucene.net的使用
- .net datagrid的使用
- discuz!net 的使用
- ADO.NET的使用
- .net 定时器的使用
- JSON.NET 的使用
- net use的使用
- net user的使用
- spring.net的使用
- 【.NET】<% %>的使用
- Quartz.Net的使用
- 在delphi.net的VCL.net里使用Ado.net
- 在delphi.net的VCL.net里使用Ado.net
- 浅谈C中的malloc和free
- Python之构造函数dict报错TypeError:'dict' object is not callable
- Android插件化学习之路(五)之代理Activity
- 关于Stm32定时器+ADC+DMA进行AD采样的实现
- Problem Five:[双亲数/POI Zap(多组)]
- 【.NET】<% %>的使用
- CSUOJ 1010 Water Drinking(BFS)
- Git 强大的二分 debug 功能 - git bisect
- 信息搜集之外围信息搜集
- Android Studio各种情况下导入library的教程(图解)
- nyoj 19 擅长排列的小明
- Python的浅拷贝和深拷贝
- Java-常用面板
- C语言课设:中缀表达式转后缀表达式并求值(续)