Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16500826
  • 博文数量: 5645
  • 博客积分: 9880
  • 博客等级: 中将
  • 技术积分: 68081
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-28 13:35
文章分类

全部博文(5645)

文章存档

2008年(5645)

我的朋友

分类:

2008-04-28 21:08:20

下载本文示例代码
  引言  本文我将介绍在三层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()..}  编辑顾客页面的代码类似如下: //页面的一些指令//与Form窗体有关的一些顾客属性//提交和取消按钮  编辑用户信息的后台代码类似如下: public partial class EditCustomer { protected void Page_Load(object sender, EventArgs e) {  if (!IsPostBack){   //Check if adding new customer or updating   if (_isUpdateMode)    LoadData();  } } protected void btnSubmit_Click(object sender, EventArgs e) {  if (!Page.IsValid)   return;  SaveData();  //Go Back } private void LoadData() {  Customer customer=new Customer();  customerID=_customerID;  customer.Load();  //Binding #2  //Copy customer properties into control values } private void SaveData() {  Customer customer=new Customer();  If (_isUpdateMode)  {   customer.ID=_customerID;   customer.Load();  }  //Binding #3  //Copy control values into customer properties  customer.Save(); }}共2页。 1 2 :   引言  本文我将介绍在三层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()..}  编辑顾客页面的代码类似如下: //页面的一些指令//与Form窗体有关的一些顾客属性//提交和取消按钮  编辑用户信息的后台代码类似如下: public partial class EditCustomer { protected void Page_Load(object sender, EventArgs e) {  if (!IsPostBack){   //Check if adding new customer or updating   if (_isUpdateMode)    LoadData();  } } protected void btnSubmit_Click(object sender, EventArgs e) {  if (!Page.IsValid)   return;  SaveData();  //Go Back } private void LoadData() {  Customer customer=new Customer();  customerID=_customerID;  customer.Load();  //Binding #2  //Copy customer properties into control values } private void SaveData() {  Customer customer=new Customer();  If (_isUpdateMode)  {   customer.ID=_customerID;   customer.Load();  }  //Binding #3  //Copy control values into customer properties  customer.Save(); }}共2页。 1 2 : 下载本文示例代码


三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式三层Web体系结构里的两种数据绑定模式
阅读(74) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~