DataSet控件是ADO.NET结构的主要组件,它是从数据源中检索到的数据在内存中的缓存。DataSet由一组DataTable对象组成,可以使这些对象与DataRelation对象互相关联。还可以通过使用UniqueConstraint和ForeginKeyConstraint对象在DataSet中实施数据完整性。
在典型的多层实现中,用于创建和刷新DataSet并依次更新原始数据的步骤如下:
(1)通过DataAdapter使用数据源中的数据生成和填充DataSet中的每个DataTable。
(2)通过添加、更新或删除DataRow对象更改单个的DataTable对象中的数据。
(3)调用GetChanges方法创建只反映对数据进行更改的第二个DataSet。
(4)调用DataAdapter的Update方法,并将第二个DataSet作为参数传递。
(5)调用Merge方法将第二个DataSet中的更改合并到第一个中。
(6)针对DataSet调用AcceptChanges接受更改,或者调用RejectChanges取消更改。
DataSet控件的常用属性及说明
属性 |
说明 |
CaseSensitive |
确定DataTable对象中的字符串比较是否区分大小写。默认请款下,为DataSet设置CaseSensitive属性时还将每个相关的DataTable的CaseSensitive属性设置为同一个值。而且,这个属性只对字母有效,对中文和数字就不起作用 |
DataSetName |
获取或设置当前DataSet的名称。如果不指定,则该属性值设置为NewDataset。如果将DataSet内容写入XML文件,DataSetName是XML文件的根节点名称 |
DesignMode |
如果在设计时使用组件中的DataSet,DesignMode返回True,否则返回False |
DefaultViewManager |
获取DataSet所包含的数据的自定义视图,以便使用自定义的DataViewManager进行筛选、搜索和导航 |
DataViewManager |
获取与当前视图关联的DataViewManager。如果当前视图是DataTable默认的DataView,则DataViewManager属性返回DataSet的默认DataViewManagerÿ |