第1章 ADO.NET的概念 1
1.1 ADO.NET与.NET的关系 1
1.2 ADO.NET剖析 2
1.2.1 .NET数据提供者 3
1.2.2 DataSet类 7
1.2.3 类型化DataSet 8
1.2.4 DataReader类 9
1.2.5 DataAdapter类 9
1.2.6 ADO.NET的工作原理 9
1.3 ADO与ADO.NET的比较 12
1.4 在.NET中使用ADO 14
1.5 小结 16
第2章 DataSet 17
2.1 DataSet剖析 17
2.1.1 DataSet类 18
2.1.2 DataTable类 21
2.1.3 DataColumn类 23
2.1.4 DataRow类 25
2.1.5 手工方式处理数据的示例 26
2.2 关系型数据模型支持 29
2.2.1 约束和键码 29
2.2.2 关系 31
2.3 与DataSet通信 36
2.3.1 DataAdapter类 36
2.3.2 从磁盘加载数据 40
2.3.3 以手工方式填充数据 43
2.4 合并DataSet 44
2.5 综合示例 47
2.6 小结 57
3.1 类型化DataSet的概念 58
第3章 强类型的DataSet 58
3.2 DataSet架构(XSD) 59
3.2.1 架构的构建 59
3.2.2 架构的推断 65
3.2.3 推断规则 66
3.2.4 推断示例 68
3.3 构建类型化DataSet 73
3.3.1 使用Visual Studio .NET构建类型化DataSet 73
3.3.2 使用XSD工具构建类型化DataSet 75
3.3.3 类型化DataSet应用示例 76
3.4 关系型数据模型支持 78
3.5 类型化DataSet注释 83
3.5.1 codegen命名空间 84
3.5.2 msdata命名空间 85
3.6 综合示例 87
3.7 小结 94
第4章 XML和ADO.NET 95
4.1 .NET中的DOM 95
4.2 XmlDataDocument 97
4.2.1 使用XMLDataDocument操纵XML数据 98
4.2.2 关系型视图 109
4.2.3 差距的弥补 116
4.3 高级技术 119
4.3.1 限制XML文档的关系型视图 119
4.3.2 使用类型化DataSet限制XML的关系型视图 129
4.4 小结 132
第5章 DataReader 133
5.1 连接数据库 134
5.1.1 连接SQL Server 135
5.1.2 连接OLE DB数据源 139
5.1.3 连接ODBC数据源 140
5.2 命令的执行 141
5.3 数据阅读器 143
5.3.1 DataReader类 144
5.3.2 检索数据——一个简单的示例 148
5.3.3 使用参数化的查询检索数据 149
5.3.4 使用存储过程检索数据 151
5.4 高级的数据检索 153
5.4.1 使用输出参数检索数据 153
5.4.2 检索多个无关的结果集 155
5.4.3 检索多个相关的结果集 158
5.4.4 检索层次结构的结果集 159
5.4.5 检索二进制数据 163
5.4.6 检索模式信息 166
5.5 小结 169
第6章 DataAdapter 171
6.1 DataAdapter的概述 172
6.2 读取数据 173
6.2.1 管理连接 176
6.2.2 使用命令创建数据适配器 178
6.2.3 读取多个表 181
6.2.4 定义主键 189
6.3 更新数据 191
6.3.1 使用命令更新数据 191
6.3.2 使用数据适配器更新数据 197
6.4 使用事务更新数据 208
6.5 处理并发问题 214
6.6 小结 218
第7章 企业中的ADO.NET应用 219
7.1 ADO.NET在企业应用程序中的位置 219
7.1.1 “只用ADO.NET” 220
7.1.2 “同时采用ADO.NET和OOP设计” 222
7.1.3 “不用ADO.NET” 223
7.1.4 各种方法的比较 225
7.2 数据绑定 225
7.2.1 Windows Forms数据绑定 226
7.2.2 ASP.NET数据绑定 233
7.3 ServicedComponent类 237
7.4 创建标准的数据访问层 242
7.4.1 Factory模型 242
7.4.2 ConnectionFactory类 243
7.4.3 CommandFactory类 245
7.4.4 CommandTool类 246
7.5 小结 254
第8章 Web服务和ADO.NET 255
8.1 Web服务导论 255
8.2 Web服务标准和协议 256
8.2.1 SOAP 257
8.2.2 WSDL 259
8.2.3 UDDI 259
8.2.4 DISCO 260
8.3 创建和使用Web服务 260
8.3.1 WebMethod属性 263
8.3.2 使用Web服务 264
8.4 DataSet和Web服务 267
8.4.1 股票筛选器Web服务和应用程序 267
8.4.2 通过Web服务更新DataSet 287
8.5 缓存驱动数据的.NET Web服务 299
8.5.1 输出缓存 299
8.5.2 数据缓存 300
8.6 Web服务的安全性 302
8.7 关系以数据为中心Web服务的一些宝贵经验 305
8.8 小结 307