ASP.NET控件开发基础(20)

http://tech.ddvip.com   2007年09月02日    社区交流

内容摘要:在看下文之前,我想大家应该对asp.net2.0中的数据源控件使用的简易性非常熟悉了。记得园子的开源项目NBear也为大家提供了数据源控件。个人认为数据源控件和数据绑定控件之间存在着一些约定关系,学习还当从易到难,这里就假定我们对内置的数据源已经能够熟练的使用了。这里就看看如果定义新的数据绑定控件.

  在微软的MSDN上,早就有篇文章介绍ASP.NET2.0和数据绑定控件:新的角度,新的做法 大家可以看看

  这次我们只需要了解两个基类

  ASP.NET控件开发基础(20)

  两个类都为抽象类BaseDataBoundControl类定义了两个抽象方法PerformSelect和ValidateDataSource由子类实现.

  虽然你不需要对这两个类的实现了解很多,但你需要知道两个类为你做了什么.

  1.BaseDataBoundControl类大致做了如下工作

  定义了基本的DataSource和DataSourceID基本属性,我们称为数据源标识

  其主要提供了两种不同做法的实现机制

  (1)定义了DataSource,则会验证数据源的正确性即ValidateDataSource方法(此过程由子类完成),还需要手动调用DataBind方法

  (2)定义了DataSourceID,则会自动调用DataBind方法

  当定义了以上其中一个属性时,这个类便帮你做了以下执行过程,所以你还需要了解以下成员

  OnDataPropertyChanged方法(当定义了数据源标识或其发生变化后)

  |

  RequiresDataBinding方法(确定要开始调用DataBind方法)

  |

  EnsureDataBound方法(判断如若定义DataSourceID属性,则执行DataBind方法,所以此步骤是关键点)

  |

  DataBind方法(在次方法中执行了PerformSelect方法检索数据并把数据绑定到控件,此过程由子类完成)

  2.DataBoundControl类开始真正的与数据源控件开始交互,请看下面主要实现

  (1)GetDataSource方法(检索与数据绑定控件关联的IDataSource接口,即从DataSourceID属性属性)

  |

  (2)GetData方法(从数据源控件检索数据源视图,这个方法是数据的主要来源)

责编:豆豆技术应用

正在加载评论...