对于微软ADO 2.6具体说明
对ADO 2.6进行使用时,一些结构复杂一点的组件在数据绑定时操作步骤相近,而另外一些结构简单一点的组件在数据绑定时也比较类似。以下就结合TextBox组件和DataGrid组件分别探讨DataSet在实现简单型数据绑定和复杂性数据绑定作用和具体实现方法。
我们介绍了从ADO 记录集得到XML格式数据的几种办法,也得到了最简化的字符串。但是有几个问题你仍然需要注意,ADO 2.6有些字段值还有XML里不支持的字符,比如:"'<>&,象P&G宝洁公司的名称,Chef Anton's Gumbo Mix产品名字等,在做转换时要进行编码处理。
当保存分级的记录集( data shapes)有两个限制:不能保存参数化和含有未解决的更新的记录集。为了更进一步提高性能,你可以把转换工作放到COM/COM+组件中, ASP代码只进行数据的最终表现即可。把业务层、数据层和表现层分开,ASP只需要调用数据组件,ADO 2.6数据组件调用数据库的存储过程,把结果转换成XML,最后只把简单的XML字符环串回到ASP程序里,ASP就可以用XSLT把XML进行转换,把结果送到浏览器。
ADO自动产生的XML包含了schema信息,它描述这个ADO 2.6里允许有什么节点和属性以及采用何种数据类型,而且数据节点也增加了名称空间。schema信息在需要数据验证的地方或进行更复杂的处理或许很有用,但是,大多数情况下,我们使用的是瘦客户机,我们不需要schema信息。我们可以利用XSLT来分离出我们想要的信息,去掉多余的信息。因此,我们编写下面的“ DataCleaner.xsl”:
SqlCommandBuilder sqlCommandBuilder1 = new SqlCommandBuilder ( sqlDataAdapter1 ) ; //以sqlDataAdapter1为参数来初始化SqlCommandBuilder实例 dsDataSet1.Tables["Customers"].Rows[0].Delete ( ) ; //删除DataSet中删除数据表Customers中第一行数据 sqlDataAdapter1.Update ( dsDataSet1 ,"Customers" ) ; //调用Update方法,以DataSet中的数据更新从数据库 dsDataSet1.Tables["Customers"].AcceptChanges ( ) ;