从 ADO 迁移到 ADO.NET(一)
2006-07-23 11:17:26 来源:WEB开发网ADO 之所以成为一个强大而通用的数据访问工具,部分原因是其对 XML 的支持以及管理非连接行集的能力。ADO 的 Recordset 可以 是与其数据源断开连接的,只要将其 CursorLocation 属性设置为 adUseClient,将 CursorType 属性设置为 adOpenStatic, 将 LockType 属性设置为 adLockBatchOptimistic 即可。一旦记录集(recordset)被打开和加载后,通过将其 ActiveConnection 属性 设置为 Nothing,使记录集保持为非连接状态。 ''''---Disconnecting an ADO Recordset
起初 XML 功能并未集成在 ADO 中,随着 XML 的流行,在 ADO 后期版本中增加了对 XML 的支持。ADO Recordset 对象中的 Save 方法可以将记录集的行和列保存为一个预定义的 XML 大纲(schema),并将其保存为一个文件或流。使用 XML 大纲并不灵活,但是这是试图将一个 ADO 行集(rowset)保存为 XML 的第一次尝试,并且让开发者对未来的开发方向有个较清晰的认识。Recordset 也可以从一个 XML 文件中加载,前提是其使用同样的XML大纲。下列代码演示 ADO 如何将一个记录集保存为一个 XML 文件:
oRs.CursorLocation = adUseClient
oRs.CursorType = adOpenStatic
oRs.LockType = adLockBatchOptimistic
''''— Or use adLockReadOnly
oRS.OpenSet
oRS.ActiveConnection = Nothing.Save "c:\MyRowSet.xml", adPersistXML
类似于 ASP 页面上的 Response 对象输出,行集可以保存为一个流。例如, 某些 ASP 代码可以接受一个请求,检索一个行集,将行集以流的形式发送给 Response 对象,后者将结果返给客户端。下列代码演示如何将一个记录集的内容保存为一个 Stream 对象。也可以将 Save 方法的第一个参数置为 Response 对象,这样就可以将 XML 行集流输出给浏览器:Dim oStm As ADODB.StreamSet
oStm = New ADODB.Stream
oRs.Save oStm, adPersistXML
传统的 ADO 和 ASP 均支持流处理。当然,在.NET中,Web services 同样支持流,并且 Web Services 提供了比传统的 ADO 和 ASP 多得多的功能。实际上,Web Services 是一项处理数据请求并将数据以 XML 形式通过 HTTP 传输的技术。ADO 可以以流形式保存 XML,不过这是 ADO 后来的完善措施(afterthought)。而 ADO.NET 的 DataSet 对象通过 WriteXml 和 WriteXmlSchema 方法将其内容输出为一个 XML 文件或流。因此,ADO 的 Recordset 的 Save 方法是经过改进以适于将其内容输出为一个 XML,而 ADO.NET 的 DataSet 一开始就具有此特性。
- ››Adobe推出用于iOS设备创建PDF文件的应用
- ››Adobe发布Acrobat X 不支持苹果iOS系统
- ››Adobe公司展示plenoptic lenses技术
- ››迁移DHCP服务器
- ››迁移集群环境中的 WebSphere Commerce
- ››Adobe:移动版Flash实测性能高于HTML5视频
- ››Adobe更新Web版Photoshop 无需注册即可使用
- ››Adobe Flash 10.1被曝支持Android效果不佳
- ››Adobe Flash 10.1 for Android 版本被曝工作状况不...
- ››Adobe CEO:不担心iPhone和iPad封Flash技术
- ››Adobe为iPad、Android平台发布免费Photoshop
- ››Adobe发布Android版Flash 10.1 Beta 3
更多精彩
赞助商链接