第1章 平台体系结构 1
1.1 Microsoft.NET的含义 1
1.1.1 .NET Enterprise Server 2
1.1.2 Microsoft.NET智能客户 3
1.1.3 Microsoft.NET XML Web服务 3
1.1.4 Microsoft.NET开发人员工具 4
1.2 XML Web服务 4
1.2.1 XML Web服务和SOAP 4
1.2.2 WSDL、DISCO和UDDI 5
1.3 .NET Framework 6
1.4 ASP.NET 9
1.5 Windows Forms 10
1.6 公共语言运行库 11
1.6.1 类型安全 12
1.6.2 公共语言规范(CLS) 13
1.7 基类库 14
1.8 J2EE和.NET的对比 17
1.8.1 J2EE对.NET的反击 18
1.8.2 Microsoft的反辩 19
1.9 小结 19
第2章 开发工具 20
2.1 Notepad和csc.exe 20
2.1.1 控制台应用程序 20
2.2 Visual Studio.NET 21
2.1.2 运行应用程序 21
2.2.2 Windows Forms 22
2.2.3 XML支持 22
2.2.4 Web服务 22
2.2.5 创建Windows应用程序 22
2.2.1 Web窗体 22
2.2.6 使用VS.NET创建Web应用程序 27
2.2.7 部署并运行应用程序 30
2.2.8 创建ASP.NET Web服务 30
2.2.9 运行Web服务 32
2.2.10 在Visual Studio.NET中进行调试 35
2.3.1 界面 36
2.3 WebMatrix 36
2.3.2 Web Matrix特性和语言支持 37
2.3.3 设计 37
2.3.4 Toolbox 39
2.3.5 Properties窗口 41
2.3.6 编码和开发 42
2.4 Dreamweaver MX 44
2.4.1 界面 44
2.4.2 文档和模板 45
2.4.3 特性和语言支持 46
2.5 SharpDevelop 46
2.6 小结 47
第3章 语言语法 49
3.1 源文件约定 50
3.1.1 文件命名 50
3.1.2 顶级声明 50
3.2 语法 52
3.2.1 基本数据类型 52
3.2.2 转换和强制转换 54
3.2.3 值类型和引用类型 55
3.2.4 运算符 56
3.2.5 流控制 61
3.3.1 访问修饰符 63
3.3 类的基础知识 63
3.3.2 Main()方法 65
3.3.3 其他方法 66
3.3.4 属性 69
3.4 结构 70
3.5 C#中的数组 71
3.5.1 一维数组 71
3.5.2 多维数组 72
3.5.3 不规则数组 73
3.5.4 System.Array类 73
3.6 继承类和派生类 74
3.6.1 对基类进行类型转换 76
3.6.2 方法重写 78
3.6.3 抽象类 81
3.6.4 接口 82
3.6.5 运算符重载 84
3.7 异常 86
3.8 高级C#技术 87
3.8.1 索引器 87
3.8.2 属性 89
3.8.3 委托 90
3.8.4 无用单元收集 93
3.8.5 安全代码和不安全代码 93
3.9 小结 95
4.1 ADO.NET的结构 96
第4章 数据访问 96
4.1.1 ADO.NET托管提供者 99
4.1.2 DataAdapter类 101
4.1.3 DataSet类 102
4.2 对DataSet进行过滤和排序 105
4.3 实际操作 106
4.3.1 取数据 108
4.3.2 处理数据 111
4.3.3 ADO.NET事件 125
4.4 ADO.NET异常 127
4.5 输出DataSet的内容 130
4.5.1 XML 130
4.5.2 串行化 133
4.6 小结 136
第5章 动态Web应用程序 137
5.1 页面请求及其工作原理 138
5.2 ASP.NET页面事件 139
5.3 HTML服务器控件 141
5.4 Web服务器控件 152
5.5 验证控件 183
5.6 内联或后台编码 194
5.6.1 后台编码原理 195
5.6.2 ASP.NET和JSP 196
5.7 小结 197
第6章 高级动态Web应用程序 199
6.1 运行示例 199
6.2 ASP.NET中的数据绑定 199
6.2.1 属性 200
6.2.2 集合 201
6.2.3 DataTables 203
6.3 管理会话和应用程序状态 215
6.3.1 会话状态 215
6.3.2 购物车页面 216
6.3.3 应用程序状态 223
6.4.1 基础自定义控件 226
6.4 构建自定义控件 226
6.4.2 被派生的自定义控件 229
6.5 复合自定义控件 232
6.6 小结 239
第7章 ASP.NET Web服务 240
7.1 创建ASP.NET Web服务 240
7.1.1 调用Web服务 242
7.1.2 创建ASP.NET Web服务 243
7.1.3 测试ASP.NET Web服务 246
7.1.4 使用Web服务 247
7.1.5 在NET客户程序中使用外部Web服务 252
7.2 Web服务链 255
7.3 小结 256
第8章 Windows Forms与智能客户 257
8.1 Windows Forms应用程序简例 257
8.1.1 背后隐藏的秘密 258
8.1.2 处理属性 260
8.1.3 向窗体添加控件 262
8.1.4 控件的布局选项 264
8.1.5 事件处理 265
8.1.6 完成应用程序 266
8.1.7 构建应用程序 276
8.2 智能客户 277
8.2.3 信任程序集 278
8.2.4 创建加载器 278
8.2.2 发布程序集 278
8.2.1 创建程序表 278
8.2.5 测试智能客户 280
8.2.6 更新智能客户 281
8.3 WinForms数据绑定控件 283
8.3.1 与单个元素绑定 283
8.3.2 与多个元素绑定 285
8.4 小结 286
第9章 企业组件 288
9.1 J2EE对企业应用程序的支持 288
9.1.1 J2EE平台 289
9.1.2 J2EE技术 292
9.1.3 J2EE部署 294
9.2 .NET对企业应用程序的支持 294
9.2.1 System.EnterpriseServices库 295
9.2.2 组件服务管理器 296
9.3 COM+的应用 300
9.3.1 编写ServicedComponent 300
9.3.2 配置程序集 303
9.3.3 编译应用程序 304
9.3.4 添加对象入池和JIT激活支持 304
9.3.5 编写客户应用程序 305
9.4 小结 307
10.1.1 RMI 308
10.1 远程对象体系结构 308
第10章 .NET Remoting 308
10.1.2 .NET Remoting 309
10.2 探索.NET Remoting 310
10.2.1 Remoting命名空间 310
10.2.2 .NET中的串行化 311
10.2.3 编组概念 314
10.2.4 信道 316
10.2.5 格式化程序 317
10.2.6 激活 317
10.2.7 调用上下文 326
10.2.8 租约和发起人 327
10.2.9 跟踪和日志记录 333
10.3 构建Remoting应用程序 337
10.3.1 委托和事件的远程处理问题 338
10.3.2 构建聊天服务器 339
10.4 小结 353
第11章 与现有代码互操作 355
11.1 与Java互操作 355
11.1.1 Microsoft Biztalk Server 355
11.1.2 使用Web服务进行集成 356
11.1.3 Microsoft Visual J# 356
11.2 与COM互操作 365
11.2.1 通过.NET访问COM组件 366
11.2.2 将ActiveX控件合并到.NET应用程序中 370
11.3 小结 371