一、数据绑定语法

数据绑定表达式包含在“<%#”和“%>”分隔符之内,并使用Eval方法和Bind方法。Eval方法用于定义单向(只读)绑定,Bind方法用于定义双向(可更新)绑定。

语法格式:<%#Eval("字段名") %>

     <%#Bind("字段名") %>

<%#绑定表达式 %> 不仅可以绑定数据源,而且可以绑定简单属性、集合、表达式,甚至从方法调用返回结果。

二、数据绑定表达式出现的位置

1.可以将数据绑定表达式包含在服务器控件或者普通的HTML元素的开始标记中,作为属性名和属性值对的值。eg:

<asp:TextBox ID="TextBox1"  runat="server" Text='<%#数据绑定表达式%>'></asp:TextBox>

此时数据的绑定表达式可以是一个变量,也可以是一个带返回值的C#方法,也可以是某个控件的某个属性的值,也可以是C#对象的某个字段或者属性的值等。当然也可以直接就是一个字符串。

如果此时的数据绑定表达式是Eval("数据库中某个表的某个字段")等,那么必须把TextBox1放在某个循环显示的控件的模板中才正确,否则会提示:“Eval()、XPath()和Bind()这类数据绑定方法只能在数据绑定控件的上下文中使用",意思是要把TextBox1放在像Repeater、DataList、GridView这样的控件的模板中。

2.数据绑定表达式可以包含在页面中的任何位置。

如果此时的数据绑定表达式是Eval("数据库中某个表的某个字段")等,那么必须把<%#绑定表达式1 %>、<%#绑定表达式2 %>...放在像Repeater、DataList、GridView这样的控件的模板中。

3.可以将数据绑定表达式包含在JavaScript代码中,从而实现在JavaScript中调用C#的方法。

三、数据绑定表达式类型

1.绑定变量。变量可以作为数据源来提供数据。注意,这个变量必须为公有字段或受保护字段,即访问修饰符为public或protected。eg:<%#变量名%>

2.绑定服务器控件的属性值,可以是服务器控件的属性值。

3.绑定方法。有返回值的方法可以作为数据源来提供数据。语法格式为:<%# 方法名(参数表)%>

4.绑定数组对象。数据对象可以作为数据源来提供数据。语法格式为:<%# 数据名 %>

5.绑定集合或列表列表控件、GridView等服务器控件可用集合作为数据源,这些控件只能绑定到支持IEnumerable、ICollection或IListSource接口的集合上。常见的是绑定ArrayList、Hashtable、DataView和DataReader。语法格式为:<%# 集合名 %>

6.绑定表达式。语法格式为:<%# 表达式 %>

7.绑定数据表的字段。字段可以是用Eval取得的数据表的字段,相当于数据库中某个表或者视图中的一行记录,而一行可以有多列。

注意:如果数据绑定表达式作为属性的值,只要数据绑定表达式中没有出现双引号,那么<%# 数据绑定表达式 %>的最外层用双引号或者单引号都可以。如果数据绑定表达式中出现双引号,则<%# 数据绑定表达式 %>的最外层最好要用单引号。

ASP.NET实现数据绑定的更多相关文章

  1. 【转】ASP.NET常用数据绑定控件优劣总结

    转自:http://www.cnblogs.com/Olive116/archive/2012/10/24/2736570.html ASP.NET常用数据绑定控件优劣总结   本文的初衷在于对Asp ...

  2. ASP.NET常用数据绑定控件优劣总结

    本文的初衷在于对Asp.net常用数据绑定控件进行一个概览性的总结,主要分析各种数据绑定控件各自的优缺点,以便在实际的开发中选用合适的控件进行数据绑定,以提高开发效率. 因为这些数据绑定控件大部分都已 ...

  3. ASP.NET 前端数据绑定---<%#%>及Eval()的使用

    ASP.NET 前端html代码中会经常出现的<%%>的代码,里面的文本其实就是不能直接输出到客户端浏览器的文本,是需要服务器解释的. 在ASP中,<%%>里面的文本是vbsc ...

  4. ASP.Net之数据绑定

    ---恢复内容开始--- [概述]数据绑定是指从数据源获取数据或向数据源写入数据.简单的数据绑定可以是对变量或属性的绑定,比较复杂的是对ASP.NET数据绑定控件的操作 1.简单的属性绑定 基于属性的 ...

  5. 027. asp.net中数据绑定控件之 GridView控件

    GridView控件支持下面的功能: 绑定至数据源控件, 如SqlDataSource 内置排序功能 内置更新和删除功能 内置分页功能 内置行选择功能 可以编程方式访问GridView对象模型以动态设 ...

  6. ASP.NET中数据绑定表达式

    今天谈下.NET中的数据绑定表达式.数据绑定表达式必须包含在<%#和%>字符之间.格式如下: <tagprefix:tagname property='<%# data-bin ...

  7. 《ASP.NET》数据绑定—DataList实践篇

    上篇文章大概讲了DataList的一些基础知识,掌握这些知识在将来的应用中起到非常大的作用,如今我们就開始讲上篇文章中说的基础知识做一个小样例. 首先,我机子的数据库中有一张person表.例如以下图 ...

  8. 《ASP.NET》数据绑定—DataList

    DataList控件是.NET中的一个控件.DataList控件以表的形式呈现数据(在属性生成器中能够编辑),通过该控件,您能够使用不同的布局来显示数据记录(使用模板编辑).比如,将数据记录排成列或行 ...

  9. ASP.NET LinqDataSource数据绑定后,遇到[MissingMethodException: 没有为该对象定义无参数的构造函数。]问题。

    问题出现的情形:LinqDataSource数据绑定到DetailsView或GridView均出错,错误如下: “/”应用程序中的服务器错误. 没有为该对象定义无参数的构造函数. 说明: 执行当前 ...

随机推荐

  1. 浅谈https\ssl\数字证书

    全球可信的SSL数字证书申请:http://www.shuzizhengshu.com 在互联网安全通信方式上,目前用的最多的就是https配合ssl和数字证书来保证传输和认证安全了.本文追本溯源围绕 ...

  2. Memory Analysis Part 1 – Obtaining a Java Heapdump

    转自: https://blog.codecentric.de/en/2008/07/memory-analysis-part-1-obtaining-a-java-heapdump/ For tro ...

  3. Linux 判断进程是否已经运行的程序

    bool ServerProcess::isAlreadyRunning() { #ifndef __linux__ WarningLog(<<"can't check if p ...

  4. scalaWindows和Linux搭建

    Windows搭建 https://www.cnblogs.com/freeweb/p/5623372.html Linux搭建 https://www.cnblogs.com/freeweb/p/5 ...

  5. Python 数据分析—第八章 画图

    一.matplotlib的用法 折线图+一些常用的设置 #显示中文 import matplotlib as mpl mpl.rcParams['font.sans-serif'] = [u'SimH ...

  6. Android-ContentProvider简单的增删改查

    注意:在ContentProvider里面写对数据库增删改查的时候,千万不能 db.close();  cursor.close(); 等操作,不然其他应用访问不到数据,也没有必要写isOpen(); ...

  7. java策略模式(及与工厂模式的区别)

    按一般教程中出现的例子理解: 简单工厂模式:客户端传一个条件进工厂类,工厂类根据条件创建相应的产品类对象,并return给客户端,供客户端使用.即客户端使用的是工厂类生产的产品对象. 策略模式:客户端 ...

  8. Android Get方式发送信息

    程序需要用到Internet权限,所以需要在AndroidManifest.xml添加 <uses-permission android:name="android.permissio ...

  9. oppo手机永久打开USB调试模式

    现象:十分钟不使用就会自动关闭 usb 调试模式,重新打开还得输入验证码,真尼玛烦人. 方法: 数字拨号盘 输入 *#8011#  就可以永久打开.

  10. 在linux 创建网络会话和绑定两块网卡

    1. 如果我们在公司网络中要手动指定网络的IP地址,当我们回到家里则是使用DHCP(动态主机配置协议)自动分配IP地址.这就有点麻烦了,因为要频繁的修改IP地址,所以接下来我们来创建网络会话----- ...