第1章 分布式应用程序
1.1 什么是分布式数据应用程序
1.1.1 我们的定义
1.1.2 为什么需要分布
1.2 如何在Internet上进行分布式工作
1.2.1 Internet协议
1.2.2 Internet客户机
1.3 分布式应用程序的元素
1.3.1 客户机设备和客户机应用程序
1.3.2 服务器端数据存储
1.3.3 处理和表示信息
1.3.4 数据访问技术概述
1.3.5 关于“关系”数据访问
1.3.6 ADO.NET数据访问类
1.4 深入理解Sustem.Xml
1.4.1 表示数据和信息
1.4.2 System.Xml类
1.5 数据访问和N层模型
1.5.1 数据的用途是什么
1.5.2 一些N层数据访问情形
1.6 小结
第2章 组件和数据访问
2.1 不同类型的组件
2.1.1 .NET组件
2.1.2 COM和COM+组件
2.1.3 用户控件
2.1.4 包含文件
2.1.5 服务器控件
2.2 访问与展示数据
2.2.1 向胖客户机传递数据
2.2.2 为低端客户机管理数据
2.2.3 显示XML数据
2.3 DataSet对象
2.3.1 DataSet对象的结构
2.3.2 何时使用DataSet
2.4 关系数据访问组件示例
2.4.1 建立示例
2.4.2 访问及返回关系数据
2.5 小结
第3章 访问XML文档
3.1 XML数据访问组件示例
3.2 小结
第4章 应用程序管道化
4.1 客户机端技术概论
4.2 远程传输数据到客户机
4.2.1 将关系数据远程传送到客户机
4.2.2 远程传送XML数据到客户机
4.2.3 在客户机上运行.NET Framework
4.3 使用ASP.NET会话
4.3.1 ASP.NET中的会话配置
4.3.2 检测会话支持
4.4 客户机检测示例
4.4.1 检测过程概述
4.4.2 检测客户机类型
4.4.3 default.aspx页面
4.4.4 检测客户机端脚本支持
4.4.5 设备特有的主页
4.4.6 浏览结果
4.5 小结
第5章 处理低端客户机
5.1 多客户机订单应用程序
5.2 检测客户机类型
5.3 数据访问层
5.4 HTML版本的订单应用程序
5.4.1 工作流程
5.4.2 搜索顾客
5.4.3 显示顾客列表
5.4.4 显示订单列表
5.4.5 显示订单详细记录
5.5 订单列表应用程序的移动式版本
5.5.1 工作流程
5.5.2 从服务器提取数据
5.5.3 移动式页面的内容
5.6 小结
第6章 处理胖客户机
6.1 使用XML
6.1.1 为什么是XSL和XSLT
6.1.2 展示并传递XML
6.2 在IE5及以上版本中使用XML
6.2.1 建立中间层
6.2.2 选择顾客
6.2.3 选择订单
6.2.4 查看订单的详细信息
6.3 在IE5及以上版本中使用Web服务
6.3.1 了解顾客数据Web服务
6.3.2 建立中间层
6.3.3 IE5的Webservice行为
6.4 一个超文本应用程序示例
6.4.1 运行超文本应用程序示例
6.4.2 建立中间层
6.4.3 HTA页面内容
6.4.4 选择订单
6.5 处理带定界符的文本数据
6.5.1 为什么使用带定界符的文本数据
6.5.2 建立中间层
6.5.3 选择顾客
6.5.4 选择并查看订单
6.5.5 使用XML的客户机端数据绑定
6.6 小结
第7章 远程访问.NET客户机
7.1 远程访问——一个新事物
7.2 远程访问对象
7.2.1 可远程访问的对象类
7.2.2 远程服务器
7.2.3 远程客户机
7.2.4 IIS掌管的服务器
7.2.5 部署对象
7.3 Windows应用程序
7.3.1 设计选择
7.3.2 远程访问Windows应用程序的数据
7.3.3 使用Web服务
7.4 增量下载
7.4.1 创建下载窗体
7.4.2 动态加载订单窗体
7.4.3 下载高速缓存
7.5 部署
7.6 安全措施
7.7 动态应用程序
7.8 小结
第8章 在低端客户机上更新数据
8.1 更新数据存储概览
8.1.1 尽可能使处理过程高效率
8.1.2 权衡结果并提供反馈
8.1.3 通过控制访问来保护数据
8.1.4 控制并发数据更新
8.2 .NET中的数据更新技术
8.2.1 在更新数据时使用事务处理
8.2.2 更新时管理并发操作
8.3 HTML 3.2客户机的数据更新示例
8.3.1 应用程序概览
8.3.2 显示和编辑订单
8.3.3 显示和编辑订单内容
8.4 移动设备的数据更新示例
8.4.1 应用程序设计
8.4.2 查看应用程序
8.5 小结
第9章 更新远程高速缓存数据
9.1 架构回顾
9.1.1 在客户机上高速缓存更新
9.1.2 将更新回送给服务器
9.1.3 加载一个DataSet
9.2 执行更新过程
9.2.1 提供来自更新过程的反馈
9.2.2 更新过程详述
9.2.3 一个数据更新过程示例
9.3 小结
第10章 更新数据的组件
10.1 UpdateDataSet组件
10.1.1 利用组件技术便跟踪成为可能
10.1.2 组件中通用的方法
10.1.3 管理插入行的IDENTITY列
10.1.4 UpdateAllOrderDetails方法
10.1.5 创建参数化的Command对象
10.2 使用UpdateDataSet组件
10.3 小结
第11章 胖客户机更新应用程序
11.1 应用程序概述
11.2 中间层ASP.NET页面
11.2.1 从数据访问层中获取数据
11.2.2 提供给客户机的数据
11.3 在客户机上加载Diffgram
11.3.1 加载订单数据
11.3.2 加载承运商数据
11.3.3 加载产品数据
11.4 编辑.NET DataSet Diffgram
11.4.1 浏览更新的diffgram
11.4.2 更新的diffgram格式
11.5 edit-orders.aspx页面代码和HTML
11.5.1 创建订单列表
11.5.2 向服务器传递更新的diffgram
11.5.3 显示所选择的订单详细记录
11.5.4 创建订单行列表
11.5.5 讨论无效数据
11.5.6 更新订单Diffgram
11.6 小结
第12章 协调更新错误
12.1 协调更新错误概述
12.2 协调的详细过程
12.3 借助于Web服务的胖客户机更新
12.3.1 问题和解决办法
12.3.2 中间层Web服务组件
12.3.3 Web服务客户机应用程序
12.4 其他的胖客户机更新技术
12.3.1 采用界定符的胖客户机更新
12.4.2 超文本应用程序更新
12.5 小结
第13章 远程.NET应用程序的数据更新
13.1 Windows Forms应用程序
13.2 新的可编辑的订单表单
13.2.1 DataGrids和TableStyles
13.2.2 Windows表单数据绑定
13.2.3 维护当前行
13.2.4 到目前为止的代码
13.3 处理数据更改
13.3.1 添加行
13.3.2 删除行
13.3.3 取消编辑
13.4 将更改送到数据库中
13.5 并发冲突的处理
13.5.1 ErrorProvider对象
13.5.2 错误处理表单
13.5.3 识别错误
13.5.4 更改视图
13.5.5 纠正错误
13.5.6 导航
13.5.7 被删除行的处理
13.5.8 保存被纠正的数据
13.6 实际应用中的应用程序
13.7 小结
后话