首页
关于我们
服务项目
作品展示
服务支持
联系我们
友情链接
网站地图
 您当前位置:网络学院 -> 编程开发系-> 编程开发-> Asp.net教程
.NET 2.0数据绑定原理
作者:admin 来源:网络
日期: 2007-2-27
站内搜索
文章页数:[1] 
  •   自从进行.NET开发后,一直在使用.NET中的数据绑定技术,但是对其技术原理在概念上一直有点模糊,于是借助MSN,写了下面这篇文章。

对于用.NET做开发的程序员,数据绑定是再熟悉不过的技术。数据绑定可以说是最令人愉快的功能之一。这种非常灵活的语法允许开发人员不仅可以绑定到数据源,而且可以绑定到简单属性、集合、表达式甚至是从方法调用返回的结果。下表显示了语法的一些例。

简单属性

Customer:

集合

Orders:

表达式

Contact:

方法结果

Outstanding Balance:

一、简单属性绑定

对于第一种简单属性示例如下:

前台代码:

后台代码:

运行结果:

尽管该语法看起来与 ASP 的 Response.Write 快捷方式 相似,但其行为完全不同。ASP Response.Write 快捷方式语法在处理页时计算,而 ASP.NET 数据绑定语法仅在调用 DataBind 方法时计算。

DataBind 是页和所有服务器控件的方法。当在父控件上调用 DataBind 时,它级联到该控件的所有子控件。例如,

DataList1.DataBind()

将因此对 DataList 模板中的每一控件调用 DataBind 方法。在页上调用 DataBind —

Page.DataBind()

或只是

DataBind()

— 会导致计算页上的所有数据绑定表达式。

下面我们这个是MSN上的一个绑定简单属性的例子,代码如下:

到页属性的数据绑定

客户:

未结的订单:

运行结果:

注意这些值在

DataBind()

调用前初始化,这个例子中定义了两个页面属性custID、orderCount,然后进行页面绑定。

二、绑定到集合和列表

像 GridView、DropDownList 这样的列表服务器控件将集合用作数据源。下面的示例说明如何绑定到通常的公共语言运行库集合类型。这些控件只能绑定到支持 IEnumerable、ICollection 或 IListSource 接口的集合。最常见的是绑定到 ArrayList、Hashtable、DataView 和 DataReader。

下面这个是MSN上将ArrayList绑定到DropDownList上的例子,代码如下:

数据绑定 DropDownList

< asp:DropDownList id="DropDown1" runat="server" />

< asp:button Text=" 提交" OnClick="SubmitBtn_Click" runat=server/>

< asp:Label id=Label1 font-name=" 宋体" font-size=" 10.5pt " runat="server" />

下面我们再来看一个将ArrayList绑定到GridView的例子,代码如下:

数据绑定 GridView

三、 绑定表达式或方法

到方法和表达式的数据绑定

BorderColor="black"

BorderWidth="1"

GridLines="Both"

CellPadding="3"

CellSpacing="0"

>

数字值:

偶/奇:

asp:datalist>

四、 DataBinder.Eval

ASP.NET 框架提供了一种静态方法,计算后期绑定的数据绑定表达式并且可选择将结果格式化为字符串。DataBinder.Eval 很方便,因为它消除了开发人员为强迫将值转换为所需的数据类型而必须做的许多显式转换。这在数据绑定模板列表内的控件时尤其有用,因为通常数据行和数据字段的类型都必须转换。

请看下面的示例,本例中整数将显示为货币字符串。使用标准的 ASP.NET 数据绑定语法,必须首先转换数据行的类型以便检索数据字段 IntegerValue。下一步,将此作为参数传递给 String.Format 方法。

该语法可能比较复杂,难以记忆。相反,DataBinder.Eval 只是一个具有三个参数的方法:数据项的命名容器、数据字段名和格式字符串。在像 DataList、DataGrid 或 Repeater 这样的模板列表中,命名容器始终是 Container.DataItem。Page 是另一个可与 DataBinder.Eval 一起使用的命名容器。

格式字符串参数是可选的。如果省略它,则 DataBinder.Eval 返回对象类型的值,如下例所示。

文章页数:[1] 
放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·在Asp.net用C#建立动态Excel
·ASP.NET中常用的js代码
·asp.net2.0如何加密数据库联接字符串
·ASP.NET数据库编程快速入门之技术慨述
·投票结果的图片进度条显示
·ASP.NET 程序中常用的三十三种代码
·ASP.NET:页面缓存
·细节决定成败 ASP.NET中的蝴蝶效应
·.NET 2.0数据绑定原理
·让ASP.NET简便使用SCRIPT
最新文章
·使ASP.NET中的数据库操作变得简单
·ASP.NET中文件上传下载方法集合
·ASP.NET 程序中常用的三十三种代码
·ASP.NET数据库编程快速入门之技术慨述
·ASP.NET 2.0 中的创建母版页
·ASP.NET 2.0中创建内容页
·ASP.NET2.0数据库入门之SqlDataSource
·投票结果的图片进度条显示
·在Asp.net用C#建立动态Excel
·VS2005和ASP.NET2.0中使用强类型数据
相关主题
版权申明:除部分特别声明不要转载,或者授权本站独家播发的文章外,大家可以自由转载本站的原创文章,但原作者和来自本站的链接必须保留(非本站原创的,按照原来自一节,自行链接)。文章版权归本站和作者共有。
转载要求:转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印,亦不能抹去本站水印。
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
发表评论  打印  刷新  推荐给朋友  返回顶部  关闭

网上大名: