我爱Aspx >> Asp.Net >> 三层Web体系结构里的两种数据绑定模式
推荐:ASP.NET数据库专区
引言本文我将介绍在三层Web体系开发中的两种数据绑定模式,然后在不超过你已经会用的控件知识的情况下,来介绍能够极大减少这种数据绑定模式的替代品--XLib库文件。具体的说,本文开始我们介绍在三层体系结构里常规的数据绑定方法,然后介绍XLib是如何提高这种绑定效率的。
1、 数据绑定流程在三层Web体系结构里,通常有四步来完成数据绑定任务:
1)从数据库里加载数据到业务逻辑对象
2)在Web窗体上放置Web控件并使用业务逻辑对象进行填充数据。
3)将Web控件的值拷贝到业务逻辑对象的属性里
4)保存业务逻辑对象的属性值到数据库。
以具体的Customer为例,在三层应用程序里最简单的数据绑定模式的步骤如下:
1)从数据库Customer表里加载合适的顾客记录
2)将顾客记录绑定到Customer业务对象上
3)将Customer业务对象绑定到Web控件上
4)用户在窗体里输入数据并单击Submit进行提交数据
5)将Web控件的更新事件绑定到Customer对象上
6)把Customer上的信息保存到表里
7)将表里的信息保存到Customer上
有多种方式执行这个流程,我概括起来有三种:
1、显示生成数据绑定方式--使用大家都熟悉的前台方式
2、Microsoft的方式--使用类型化的DataSet和FormView
3、XLib方式--使用反射技术和其他的.NET特性来分析绑定--在运行时获取对象
1.2 代码--业务逻辑对象和Web 页面
为了具体说明这三种方式的使用方法,我将使用Customer类和EditCustomer页面作为演示。下面是一些代码,它将说明具体在什么地方进行数据绑定。
通常,Customer类看起来类似如下:
| public class Customer{ //list all properties //CRUD methods public void Load() { //Binding #1 //Copy database record values into properties } public void Save() { //Binding #4 //Copy properties values into database record } public void Delete() ; //Other methods specific to customer public string GetCustomerFullName()..} |
微软软件开发技术二十年回顾[03-16]
C++/CLI中有效使用非托管并列缓存[03-16]
用C#和WMI获取逻辑驱动器详细信息[03-16]
用Visual C#开发简单的复合控件[03-16]
Visual C# 2.0匿名方法揭密[03-16]
深入理解C# 3.0的五项主要改进[03-16]
缓冲区溢出还是问题吗?C++/CLI安..[03-16]
“不完美”的VS 2005 Team Syste..[03-16]
实例解析C++/CLI中的继承与枚举[03-16]
实例解析C++/CLI中的接口与泛型[03-16]