8.1 数据绑定概述
数据绑定是ASP.NET 4.5提供的另外一种访问数据库的方法。与ADO.NET数据库访问技术不同的是:数据绑定技术可以让编程人员不必太关注数据库的连接、数据库的命令以及如何格式化这些技术环节,而是直接把数据绑定到服务器控件或HTML元素。这种读取数据的方式效率非常高,而且基本上不用写多少代码就可以实现。
数据绑定的原理是:首先要设置控件的数据源和数据的显示格式,把这些设置完毕以后,控件就会自动处理剩余的工作,然后把数据按照要预定的格式显示在页面上。
ASP.NET 4.5的数据绑定具有两种类型:简单绑定和复杂绑定。简单数据绑定是将一个控件绑定到单个数据元素(如标签控件显示的值)。这是用于诸如TextBox或Label之类控件(通常是只显示单个值的控件)的典型绑定类型。复杂数据绑定将一个控件绑定到多个数据元素(通常是数据库中的多个记录),复杂绑定又被称作基于列表的绑定。
在ASP.NET 4.5中,引入了数据绑定的语法,使用该语法可以轻松地将Web控件的属性绑定到数据源,其语法如下:
这种非常灵活的语法允许开发人员绑定到不同的数据源,可以是变量、属性、表达式、列表、数据集和视图等。
在指定了绑定数据源之后,通过调用控件的DataBind方法或者该控件所属父控件的DataBind方法来实现页面所有控件的数据绑定,从而在页面中显示出相应的绑定数据。DataBind方法将控件及其所有的子控件绑定到DataSource属性指定的数据源。当在父控件上调用DataBind方法时,该控件及其所有的子控件都会调用DataBind方法。
DataBind方法是ASP.NET 4.5的Page对象和所有Web控件的成员方法。由于Page对象是该页面上所有控件的父控件,所以在该页面上调用DataBind方法将会使页面中所有的数据绑定都被处理。通常情况下,Page对象的DataBind方法都在Page_Load事件响应函数中调用。调用方法如下。
上面的代码中第2行调用Page对象的DataBind方法。DataBind方法主要用于同步数据源和数据控件中数据,使得数据源中任何更改都可以在数据控件中反映出来。通常是在数据源中数据更新后才被调用。