书籍详情
Visual J# .NET技术内幕
作者:(美)John Sharp,(美)Andy Longshaw,(美)Peter Roxburgh著;许志庆,王卫国译;许志庆译
出版社:清华大学出版社
出版时间:2004-02-01
ISBN:9787302077114
定价:¥78.00
购买这本书可以去
内容简介
本书使您能够提升Java技能,学习如何使用VisualJ#,.NET创建强大的MicrosodtWindows应用程序和高性能分布式应用程序。本书内容全面、深入,详细阐述了权威的技术细节。通过这本书的学习,您能够全面掌握VisualJ#,.NET,了解Microsodt.NET的丰富特性,从而建立可伸缩的企业级应用程序。书中介绍了.NET的体系结构、,使用VisualJ#,.NET处理数据方法、创建XMLWeb服务的方法、建立跨局域网的多线程应用程序的方法。此外,还涵盖了建立使用Windows特性和服务的应用程序以及应用程序以及应用程序如何通过Internet提供全球搜索的关键主题。JohnSharp编程领域的知名专家之一,在多种编程语言方面均有建树。他撰写过多本技术图书,其中包括VisualJ#,.NET程序设计、Visualc++NET程序设计等多本已在国内出版的畅销书。J#是一种采用Java语法的编程语言,它使Java程序员能够使用.NET框架开发各种应用程序。本书全面、深入地讲述了如何使用J#和VisualStudio.NET,开发在.NET环境下运行的企业应用程序。本书分为五大部分。第Ⅰ部分,“.NET的体系结构”,介绍.NET平台的结构、主要概念、公共语言运行库以及.NET中提供的GUI库等。第Ⅱ部分,“管理和操作数据”,重点介绍在J#中如何处理数据。第Ⅲ部分,“企业开发”,介绍如何开发可以通过局域网运行的多线程应用程序。第Ⅳ部分,“与Windows进行集成”,介绍如何开发能够利用Windows的特性与服务的应用程序。第Ⅴ部分,“生成Web应用程序”,介绍使用J#开发能够连接到Internet的应用程序,包括ASP.NET模型、Web服务开发等。本书适合具有Java开发经验、想利用.NET平台开发各种应用程序的程序员。
作者简介
John Sharp 编程领域的知名专家之一,在多种编程语言方面均有建树。他撰写过多本技术图书,其中包括Visual J#,.NET程序设计、Visual c++ NET程序设计等多本已在国内出版的畅销书。
目录
第Ⅰ部分 .NET的体系结构
第1章 N层开发面临的挑战 3
1.1 客户端/服务器和N层体系结构 3
1.1.1 两层体系结构 3
1.1.2 N层体系结构 5
1.1.3 Northwind Traders示例 6
1.2 连接与数据格式 8
1.2.1 套接字 9
1.2.2 远程过程调用 10
1.2.3 对象RPC 11
1.2.4 远程方法启用 12
1.2.5 Web 13
1.3 数据访问 15
1.3.1 开放式数据库连接 15
1.3.2 Java数据库连接 16
1.3.3 ADO和ADO.NET 16
1.4 非功能性需求 17
1.4.1 安全性 17
1.4.2 可缩放性和可用性 18
1.4.3 完整性和事务 18
1.5 .NET企业服务器 19
1.6 Java和.NET 19
1.7 本章小结 20
第2章 Microsoft .NET 21
2.1 编译器和语言支持 21
2.1.1 公共语言运行库 21
2.1.2 跨语言开发 29
2.1.3 内存管理 33
2.1.4 将非托管代码集成到.NET应用程序中 37
2.2 程序集和部署 38
2.2.1 DLL的乐趣:电影剧本 38
2.2.2 .NET程序集 39
2.2.3 私有程序集 41
2.2.4 全局程序集高速缓存 42
2.2.5 配置应用程序 45
2.3 .NET框架类库 49
2.3.1 命名空间 50
2.4 .NET远程处理和Web 51
2.4.1 .NET远程处理体系结构 51
2.4.2 远程对象激活 52
2.4.3 ASP.NET 53
2.4.4 Web服务 54
2.5 .NET安全性 54
2.5.1 应用程序域 55
2.5.2 基于角色的安全性 57
2.5.3 代码访问安全性 60
2.6 本章小结 65
第3章 Java和公共语言运行库 66
3.1 组件和Java 67
3.1.1 JavaBeans 68
3.1.2 .NET中的组件 73
3.2 Java. J#和.NET框架 80
3.2.1 类的打包和查找 81
3.2.2 Java类的层次结构 82
3.2.3 其他问题 89
3.2.4 迁移到J# 92
3.3 元数据和属性 94
3.3.1 .NET中的反射 94
3.3.2 属性(Attribute) 101
3.4 企业版Java 102
3.4.1 J2EE的元素 103
3.4.2 .NET与J2EE的比较 106
3.4.3 Java宠物商店 109
3.5 本章小结 111
第4章 图形用户界面 112
4.1 桌面GUI 112
4.1.1 重访Java GUI开发 113
4.1.2 Windows Forms库 115
4.2 移植现有Java应用程序 115
4.3 使用.NET 类编写GUI应用程序 124
4.3.1 创建Windows窗体 124
4.3.2 向窗体添加控件 128
4.3.3 处理事件 134
4.3.4 使用文件对话框 135
4.3.5 使用系统剪贴板 139
4.3.6 生成并运行应用程序 141
4.4 本章小结 141
第Ⅱ部分 管理和操作数据
第5章 处理XML 145
5.1 在.NET应用程序中使用XML 145
5.1.1 作为数据格式的XML 146
5.1.2 XML的角色 148
5.1.3 XML支持所需应用程序 149
5.1.4 处理XML数据 149
5.1.5 Visual J#和.NET框架中对XML的支持 150
5.2 XML文档的单个传递处理 152
5.2.1 使用XMLReader类分析XML文档 153
5.2.2 使用XMLTextReader实例处理XML 153
5.2.3 用于读取和导航的其他选项 160
5.2.4 类型和命名空间 161
5.2.5 异常处理 163
5.2.6 使用XmlWriter类编写XML文档 163
5.2.7 写入时的转义和复制 166
5.3 验证和实体解析 166
5.3.1 验证XML文档 166
5.3.2 解析实体 171
5.4 在内存中处理XML文档 171
5.4.1 内存中处理 172
5.4.2 将XML加载到XmlDocument类 173
5.4.3 从DOM文档获取信息 173
5.4.4 将DOM片段视为流 178
5.5 编写和操作内存中XML文档 178
5.5.1 更改DOM树的内容 178
5.5.2 大量更改XML文档 179
5.5.3 写出DOM树 180
5.6 XML与数据 181
5.6.1 XML与ADO.NET数据之间的联系 181
5.6.2 将XML视为关系数据 182
5.6.3 将XML作为关系数据操作 182
5.6.4 将关系数据视为XML 184
5.7 本章小结 184
第6章 转换XML 185
6.1 在.NET应用程序中转换XML 185
6.1.1 转换需求 185
6.1.2 XSLT处理模型 187
6.1.3 应用转换 190
6.1.4 .NET对XML转换的支持 191
6.2 对XML文档应用样式表 192
6.2.1 使用XslTransform进行的简单转换 192
6.2.2 转换源和目标 194
6.2.3 转换DataSet 195
6.3 优化和部分转换 195
6.3.1 使用XPath搜索和导航 196
6.3.2 优化XSLT转换 197
6.3.3 部分转换 198
6.4 参数化和外部功能 198
6.4.1 传入参数 199
6.4.2 调用外部函数 202
6.5 本章小结 207
第7章 ADO.NET 208
7.1 ADO.NET的体系结构 208
7.1.1 ADO.NET的组件 209
7.1.2 DataSet对象 210
7.1.3 连接和数据适配器 211
7.2 连接到数据存储区 211
7.2.1 连接到数据源(OLE DB和SQL) 212
7.2.2 连接和Visual Studio .NET 213
7.2.3 连接池 214
7.2.4 使用连接事件 214
7.3 对数据存储区执行命令 215
7.3.1 创建命令 215
7.3.2 在语句中使用参数 217
7.3.3 调用存储过程 223
7.3.4 从数据源中检索单条记录 223
7.3.5 将DataReader对象用于只读数据检索 223
7.4 使用DataSet对象进行数据访问 225
7.4.1 从数据适配器填充DataSet表 225
7.4.2 导航类型化的DataSet 227
7.4.3 导航非类型化的DataSet 229
7.4.4 从数据适配器操作和更新数据存储区 230
7.4.5 定义关系和约束 233
7.5 事务管理 236
7.6 使用XML和ADO.NET 237
7.6.1 以XML形式编写DataSet 237
7.6.2 以XML的形式写入DataRelation对象 240
7.6.3 由XML推断DataSet结构 240
7.7 本章小结 242
第Ⅲ部分 企业开发
第8章 .NET下的多线程 245
8.1 线程和.NET 245
8.1.1 应用程序域和线程 247
8.1.2 线程的创建 248
8.1.3 线程和安全 249
8.1.4 给线程传送参数 249
8.1.5 线程状态 250
8.1.6 终止线程 252
8.1.7 调度线程 254
8.1.8 线程和自由(不可控)代码 256
8.2 同步 257
8.2.1 手工同步 260
8.2.2 自动同步 267
8.2.3 静态和线程数据 270
8.3 线程内部通信 271
8.3.1 线程通知 271
8.3.2 计时器 280
8.4 线程池 281
8.4.1 Threadpool类 282
8.4.2 异步IO 283
8.5 本章小结 284
第9章 网络编程基础 285
9.1 套接字基础 285
9.1.1 面向连接的套接字 286
9.1.2 数据传输的问题 299
9.1.3 无连接的套接字 300
9.1.4 阻塞与非阻塞套接字 305
9.2 套接字的异步使用 306
9.2.1 Poll和Select方法 306
9.2.2 网络流 308
9.3 Web网络编程 309
9.3.1 能够插入的协议 310
9.3.2 使用HTTP进行数据请求和接收 312
9.3.3 发布数据 314
9.3.4 请求的异步处理 315
9.3.5 使用WebClient对象 316
9.3.6 HTTP连接管理和池 317
9.4 Internet的安全性 318
9.4.1 认证和授权 319
9.4.2 加密 321
9.5 本章小结 321
第10章 对象的序列化 323
10.1 序列化与反序列化数据 323
10.1.1 格式化数据 324
10.1.2 反序列化 326
10.1.3 版本化 327
10.1.4 进行选择 331
10.2 高级序列化 331
10.2.1 自定义序列化 331
10.2.2 处理对象图 334
10.3 XML序列化 339
10.3.1 XML格式化 340
10.3.2 反序列化XML流 346
10.4 本章小结 349
第11章 .NET远程处理 351
11.1 公共语言运行库远程处理体系结构 351
11.1.1 远程对象 351
11.1.2 .NET远程处理模型 354
11.1.3 ObjRef对象与代理 359
11.1.4 消息. 信道与信道接收 360
11.2 使用TCP远程处理编程 361
11.2.1 服务器端激活对象的远程处理 361
11.2.2 客户端激活对象的远程处理 368
11.2.3 管理对象的生存期与租约 370
11.2.4 TCP远程处理安全性 372
11.2.5 远程方法参数 373
11.2.6 远程事件 373
11.3 HTTP远程处理 378
11.3.1 远程处理服务器宿主 378
11.3.2 使用IIS作宿主 380
11.3.3 HTTP远程处理安全性 382
11.4 自定义远程处理 383
11.4.1 单向远程处理 383
11.4.2 RemotingServices类 383
11.4.3 跟踪处理程序 385
11.4.4 自定义信道接收和信道 388
11.5 本章小结 389
第12章 使用消息队列 390
12.1 Message Queuing 3.0的体系结构 391
12.1.1 队列. 服务器和
Active Directory 391
12.1.2 事务性消息队列 392
12.1.3 管理队列 392
12.1.4 系统队列 393
12.1.5 消息传送 394
12.1.6 消息队列触发器 394
12.2 消息队列编程 395
12.2.1 发送和接收消息 395
12.2.2 处理消息 404
12.2.3 管理队列 408
12.3 异步操作 412
12.3.1 异步接收消息 412
12.3.2 断开连接的队列 413
12.3.3 请求确认 416
12.4 实际环境中的消息 417
12.4.1 可靠性与事务 418
12.4.2 消息的鉴别与加密 421
12.4.3 通过HTTP传送消息 423
12.5 本章小结 424
第Ⅳ部分 与Windows 进行集成
第13章 非托管组件的集成 427
13.1 托管与非托管代码 428
13.2 在非托管DLL中调用方法 428
13.2.1 使用J/Direct 429
13.2.2 平台调用服务 433
13.2.3 其他的P/Invoke问题 447
13.3 调用COM组件 450
13.3.1 创建并使用RCW 451
13.3.2 接收COM事件 455
13.3.3 使用没有类型库的COM对象 457
13.4 将.NET组件集成进COM中 464
13.4.1 为COM Interop设计.NET组件 465
13.4.2 创建COM可调用包装 469
13.4.3 测试CCW 472
13.5 与其他技术的互用性 474
13.5.1 实际的解决方案:XML Web服务 475
13.6 本章小结 475
第14章 服务组件与COM+ 476
14.1 使用现有的COM+组件 477
14.1.1 再论FourthCoffee组件 477
14.1.2 配置Fourth Coffee COM+应用程序 478
14.1.3 使用Fourth Coffee COM+应用程序 481
14.1.4 订阅松耦合事件 482
14.2 生成服务组件 488
14.2.1 服务组件基础 489
14.2.2 注册与使用服务组件 494
14.3 服务组件的功能 497
14.3.1 同步. 活动与上下文 497
14.3.2 静态方法 500
14.3.3 服务组件的激活 500
14.3.4 缓存共享的状态 506
14.3.5 关于事务的更多说明 510
14.4 .NET与COM+的安全性 513
14.4.1 代码访问安全性需求 513
14.4.2 .NET的基于角色的安全性模型 513
14.4.3 COM+的基于角色的安全性模型 514
14.4.4 从.NET中实现COM+安全性 515
14.4.5 COM+的强制安全性 517
14.5 异步组件 518
14.5.1 创建排队组件 518
14.5.2 支持松耦合事件 519
14.6 本章小结 521
第15章 实现Windows服务 522
15.1 控制Windows服务 522
15.1.1 显示服务信息 523
15.1.2 服务的启动和停止 526
15.2 编写Windows服务 528
15.2.1 服务应用程序的结构 528
15.2.2 了解安装程序类 532
15.2.3 创建新安装程序 533
15.2.4 增加服务说明 535
15.2.5 安装并测试服务 536
15.2.6 卸载服务 538
15.3 本章小结 538
第Ⅴ部分 生成Web应用程序
第16章 ASP.NET是更好的ASP 541
16.1 ASP.NET简介 542
16.1.1 基于浏览器的Web应用程序 542
16.1.2 ASP.NET环境 543
16.1.3 ASP.NET的基本编程模型 544
16.2 HTML表单和ASP表单 548
16.3 ASP.NET Web表单 552
16.3.1 服务器端控件 555
16.3.2 页面后面的代码 556
16.3.3 事件的处理 560
16.3.4 客户端验证 563
16.4 从ASP页面中迁移 568
16.4.1 语言与代码 568
16.4.2 用户接口 569
16.5 页面. 控件与数据 571
16.5.1 Page类 571
16.5.2 公共控件 574
16.5.3 创建自己的控件 576
16.5.4 数据绑定 580
16.6 生成ASP.NET Web应用程序 583
16.6.1 Web.config 583
16.6.2 Global.asax 584
16.6.3 部署ASP.NET应用程序 586
16.6.4 状态的管理 586
16.6.5 错误处理程序 593
16.6.6 安全性 598
16.6.7 缓存 601
16.7 本章小结 604
第17章 生成Web服务 605
17.1 Web服务概述 605
17.1.1 Web服务是什么 605
17.1.2 Web服务技术 606
17.1.3 .NET中的Web服务 608
17.2 创建Web服务 609
17.2.1 简单的Web服务 609
17.2.2 使用Visual Studio .NET创建Web服务 613
17.3 Web服务说明与数据类型 616
17.3.1 提供Web服务接口 616
17.3.2 调用服务 627
17.3.3 传递复杂的数据类型 628
17.3.4 传递DataSet对象 639
17.3.5 传递XML文档 641
17.4 创建XML Web服务应用程序 642
17.4.1 作为ASP.NET应用的Web服务 643
17.4.2 事务处理和Web服务 651
17.4.3 将现存的应用程序作为Web服务来提供 653
17.5 本章小结 654
第18章 创建Web服务客户端 655
18.1 Web服务客户端 655
18.1.1 Web服务的客户端视图 656
18.1.2 使用Visual Studio .NET创建Web服务客户端 657
18.1.3 跨越简单的客户端方案 660
18.1.4 其他客户端类型 677
18.2 动态搜索Web服务 680
18.2.1 搜索服务器上的服务 681
18.2.2 通过UDDI搜索服务 686
18.3 本章小结 689
第1章 N层开发面临的挑战 3
1.1 客户端/服务器和N层体系结构 3
1.1.1 两层体系结构 3
1.1.2 N层体系结构 5
1.1.3 Northwind Traders示例 6
1.2 连接与数据格式 8
1.2.1 套接字 9
1.2.2 远程过程调用 10
1.2.3 对象RPC 11
1.2.4 远程方法启用 12
1.2.5 Web 13
1.3 数据访问 15
1.3.1 开放式数据库连接 15
1.3.2 Java数据库连接 16
1.3.3 ADO和ADO.NET 16
1.4 非功能性需求 17
1.4.1 安全性 17
1.4.2 可缩放性和可用性 18
1.4.3 完整性和事务 18
1.5 .NET企业服务器 19
1.6 Java和.NET 19
1.7 本章小结 20
第2章 Microsoft .NET 21
2.1 编译器和语言支持 21
2.1.1 公共语言运行库 21
2.1.2 跨语言开发 29
2.1.3 内存管理 33
2.1.4 将非托管代码集成到.NET应用程序中 37
2.2 程序集和部署 38
2.2.1 DLL的乐趣:电影剧本 38
2.2.2 .NET程序集 39
2.2.3 私有程序集 41
2.2.4 全局程序集高速缓存 42
2.2.5 配置应用程序 45
2.3 .NET框架类库 49
2.3.1 命名空间 50
2.4 .NET远程处理和Web 51
2.4.1 .NET远程处理体系结构 51
2.4.2 远程对象激活 52
2.4.3 ASP.NET 53
2.4.4 Web服务 54
2.5 .NET安全性 54
2.5.1 应用程序域 55
2.5.2 基于角色的安全性 57
2.5.3 代码访问安全性 60
2.6 本章小结 65
第3章 Java和公共语言运行库 66
3.1 组件和Java 67
3.1.1 JavaBeans 68
3.1.2 .NET中的组件 73
3.2 Java. J#和.NET框架 80
3.2.1 类的打包和查找 81
3.2.2 Java类的层次结构 82
3.2.3 其他问题 89
3.2.4 迁移到J# 92
3.3 元数据和属性 94
3.3.1 .NET中的反射 94
3.3.2 属性(Attribute) 101
3.4 企业版Java 102
3.4.1 J2EE的元素 103
3.4.2 .NET与J2EE的比较 106
3.4.3 Java宠物商店 109
3.5 本章小结 111
第4章 图形用户界面 112
4.1 桌面GUI 112
4.1.1 重访Java GUI开发 113
4.1.2 Windows Forms库 115
4.2 移植现有Java应用程序 115
4.3 使用.NET 类编写GUI应用程序 124
4.3.1 创建Windows窗体 124
4.3.2 向窗体添加控件 128
4.3.3 处理事件 134
4.3.4 使用文件对话框 135
4.3.5 使用系统剪贴板 139
4.3.6 生成并运行应用程序 141
4.4 本章小结 141
第Ⅱ部分 管理和操作数据
第5章 处理XML 145
5.1 在.NET应用程序中使用XML 145
5.1.1 作为数据格式的XML 146
5.1.2 XML的角色 148
5.1.3 XML支持所需应用程序 149
5.1.4 处理XML数据 149
5.1.5 Visual J#和.NET框架中对XML的支持 150
5.2 XML文档的单个传递处理 152
5.2.1 使用XMLReader类分析XML文档 153
5.2.2 使用XMLTextReader实例处理XML 153
5.2.3 用于读取和导航的其他选项 160
5.2.4 类型和命名空间 161
5.2.5 异常处理 163
5.2.6 使用XmlWriter类编写XML文档 163
5.2.7 写入时的转义和复制 166
5.3 验证和实体解析 166
5.3.1 验证XML文档 166
5.3.2 解析实体 171
5.4 在内存中处理XML文档 171
5.4.1 内存中处理 172
5.4.2 将XML加载到XmlDocument类 173
5.4.3 从DOM文档获取信息 173
5.4.4 将DOM片段视为流 178
5.5 编写和操作内存中XML文档 178
5.5.1 更改DOM树的内容 178
5.5.2 大量更改XML文档 179
5.5.3 写出DOM树 180
5.6 XML与数据 181
5.6.1 XML与ADO.NET数据之间的联系 181
5.6.2 将XML视为关系数据 182
5.6.3 将XML作为关系数据操作 182
5.6.4 将关系数据视为XML 184
5.7 本章小结 184
第6章 转换XML 185
6.1 在.NET应用程序中转换XML 185
6.1.1 转换需求 185
6.1.2 XSLT处理模型 187
6.1.3 应用转换 190
6.1.4 .NET对XML转换的支持 191
6.2 对XML文档应用样式表 192
6.2.1 使用XslTransform进行的简单转换 192
6.2.2 转换源和目标 194
6.2.3 转换DataSet 195
6.3 优化和部分转换 195
6.3.1 使用XPath搜索和导航 196
6.3.2 优化XSLT转换 197
6.3.3 部分转换 198
6.4 参数化和外部功能 198
6.4.1 传入参数 199
6.4.2 调用外部函数 202
6.5 本章小结 207
第7章 ADO.NET 208
7.1 ADO.NET的体系结构 208
7.1.1 ADO.NET的组件 209
7.1.2 DataSet对象 210
7.1.3 连接和数据适配器 211
7.2 连接到数据存储区 211
7.2.1 连接到数据源(OLE DB和SQL) 212
7.2.2 连接和Visual Studio .NET 213
7.2.3 连接池 214
7.2.4 使用连接事件 214
7.3 对数据存储区执行命令 215
7.3.1 创建命令 215
7.3.2 在语句中使用参数 217
7.3.3 调用存储过程 223
7.3.4 从数据源中检索单条记录 223
7.3.5 将DataReader对象用于只读数据检索 223
7.4 使用DataSet对象进行数据访问 225
7.4.1 从数据适配器填充DataSet表 225
7.4.2 导航类型化的DataSet 227
7.4.3 导航非类型化的DataSet 229
7.4.4 从数据适配器操作和更新数据存储区 230
7.4.5 定义关系和约束 233
7.5 事务管理 236
7.6 使用XML和ADO.NET 237
7.6.1 以XML形式编写DataSet 237
7.6.2 以XML的形式写入DataRelation对象 240
7.6.3 由XML推断DataSet结构 240
7.7 本章小结 242
第Ⅲ部分 企业开发
第8章 .NET下的多线程 245
8.1 线程和.NET 245
8.1.1 应用程序域和线程 247
8.1.2 线程的创建 248
8.1.3 线程和安全 249
8.1.4 给线程传送参数 249
8.1.5 线程状态 250
8.1.6 终止线程 252
8.1.7 调度线程 254
8.1.8 线程和自由(不可控)代码 256
8.2 同步 257
8.2.1 手工同步 260
8.2.2 自动同步 267
8.2.3 静态和线程数据 270
8.3 线程内部通信 271
8.3.1 线程通知 271
8.3.2 计时器 280
8.4 线程池 281
8.4.1 Threadpool类 282
8.4.2 异步IO 283
8.5 本章小结 284
第9章 网络编程基础 285
9.1 套接字基础 285
9.1.1 面向连接的套接字 286
9.1.2 数据传输的问题 299
9.1.3 无连接的套接字 300
9.1.4 阻塞与非阻塞套接字 305
9.2 套接字的异步使用 306
9.2.1 Poll和Select方法 306
9.2.2 网络流 308
9.3 Web网络编程 309
9.3.1 能够插入的协议 310
9.3.2 使用HTTP进行数据请求和接收 312
9.3.3 发布数据 314
9.3.4 请求的异步处理 315
9.3.5 使用WebClient对象 316
9.3.6 HTTP连接管理和池 317
9.4 Internet的安全性 318
9.4.1 认证和授权 319
9.4.2 加密 321
9.5 本章小结 321
第10章 对象的序列化 323
10.1 序列化与反序列化数据 323
10.1.1 格式化数据 324
10.1.2 反序列化 326
10.1.3 版本化 327
10.1.4 进行选择 331
10.2 高级序列化 331
10.2.1 自定义序列化 331
10.2.2 处理对象图 334
10.3 XML序列化 339
10.3.1 XML格式化 340
10.3.2 反序列化XML流 346
10.4 本章小结 349
第11章 .NET远程处理 351
11.1 公共语言运行库远程处理体系结构 351
11.1.1 远程对象 351
11.1.2 .NET远程处理模型 354
11.1.3 ObjRef对象与代理 359
11.1.4 消息. 信道与信道接收 360
11.2 使用TCP远程处理编程 361
11.2.1 服务器端激活对象的远程处理 361
11.2.2 客户端激活对象的远程处理 368
11.2.3 管理对象的生存期与租约 370
11.2.4 TCP远程处理安全性 372
11.2.5 远程方法参数 373
11.2.6 远程事件 373
11.3 HTTP远程处理 378
11.3.1 远程处理服务器宿主 378
11.3.2 使用IIS作宿主 380
11.3.3 HTTP远程处理安全性 382
11.4 自定义远程处理 383
11.4.1 单向远程处理 383
11.4.2 RemotingServices类 383
11.4.3 跟踪处理程序 385
11.4.4 自定义信道接收和信道 388
11.5 本章小结 389
第12章 使用消息队列 390
12.1 Message Queuing 3.0的体系结构 391
12.1.1 队列. 服务器和
Active Directory 391
12.1.2 事务性消息队列 392
12.1.3 管理队列 392
12.1.4 系统队列 393
12.1.5 消息传送 394
12.1.6 消息队列触发器 394
12.2 消息队列编程 395
12.2.1 发送和接收消息 395
12.2.2 处理消息 404
12.2.3 管理队列 408
12.3 异步操作 412
12.3.1 异步接收消息 412
12.3.2 断开连接的队列 413
12.3.3 请求确认 416
12.4 实际环境中的消息 417
12.4.1 可靠性与事务 418
12.4.2 消息的鉴别与加密 421
12.4.3 通过HTTP传送消息 423
12.5 本章小结 424
第Ⅳ部分 与Windows 进行集成
第13章 非托管组件的集成 427
13.1 托管与非托管代码 428
13.2 在非托管DLL中调用方法 428
13.2.1 使用J/Direct 429
13.2.2 平台调用服务 433
13.2.3 其他的P/Invoke问题 447
13.3 调用COM组件 450
13.3.1 创建并使用RCW 451
13.3.2 接收COM事件 455
13.3.3 使用没有类型库的COM对象 457
13.4 将.NET组件集成进COM中 464
13.4.1 为COM Interop设计.NET组件 465
13.4.2 创建COM可调用包装 469
13.4.3 测试CCW 472
13.5 与其他技术的互用性 474
13.5.1 实际的解决方案:XML Web服务 475
13.6 本章小结 475
第14章 服务组件与COM+ 476
14.1 使用现有的COM+组件 477
14.1.1 再论FourthCoffee组件 477
14.1.2 配置Fourth Coffee COM+应用程序 478
14.1.3 使用Fourth Coffee COM+应用程序 481
14.1.4 订阅松耦合事件 482
14.2 生成服务组件 488
14.2.1 服务组件基础 489
14.2.2 注册与使用服务组件 494
14.3 服务组件的功能 497
14.3.1 同步. 活动与上下文 497
14.3.2 静态方法 500
14.3.3 服务组件的激活 500
14.3.4 缓存共享的状态 506
14.3.5 关于事务的更多说明 510
14.4 .NET与COM+的安全性 513
14.4.1 代码访问安全性需求 513
14.4.2 .NET的基于角色的安全性模型 513
14.4.3 COM+的基于角色的安全性模型 514
14.4.4 从.NET中实现COM+安全性 515
14.4.5 COM+的强制安全性 517
14.5 异步组件 518
14.5.1 创建排队组件 518
14.5.2 支持松耦合事件 519
14.6 本章小结 521
第15章 实现Windows服务 522
15.1 控制Windows服务 522
15.1.1 显示服务信息 523
15.1.2 服务的启动和停止 526
15.2 编写Windows服务 528
15.2.1 服务应用程序的结构 528
15.2.2 了解安装程序类 532
15.2.3 创建新安装程序 533
15.2.4 增加服务说明 535
15.2.5 安装并测试服务 536
15.2.6 卸载服务 538
15.3 本章小结 538
第Ⅴ部分 生成Web应用程序
第16章 ASP.NET是更好的ASP 541
16.1 ASP.NET简介 542
16.1.1 基于浏览器的Web应用程序 542
16.1.2 ASP.NET环境 543
16.1.3 ASP.NET的基本编程模型 544
16.2 HTML表单和ASP表单 548
16.3 ASP.NET Web表单 552
16.3.1 服务器端控件 555
16.3.2 页面后面的代码 556
16.3.3 事件的处理 560
16.3.4 客户端验证 563
16.4 从ASP页面中迁移 568
16.4.1 语言与代码 568
16.4.2 用户接口 569
16.5 页面. 控件与数据 571
16.5.1 Page类 571
16.5.2 公共控件 574
16.5.3 创建自己的控件 576
16.5.4 数据绑定 580
16.6 生成ASP.NET Web应用程序 583
16.6.1 Web.config 583
16.6.2 Global.asax 584
16.6.3 部署ASP.NET应用程序 586
16.6.4 状态的管理 586
16.6.5 错误处理程序 593
16.6.6 安全性 598
16.6.7 缓存 601
16.7 本章小结 604
第17章 生成Web服务 605
17.1 Web服务概述 605
17.1.1 Web服务是什么 605
17.1.2 Web服务技术 606
17.1.3 .NET中的Web服务 608
17.2 创建Web服务 609
17.2.1 简单的Web服务 609
17.2.2 使用Visual Studio .NET创建Web服务 613
17.3 Web服务说明与数据类型 616
17.3.1 提供Web服务接口 616
17.3.2 调用服务 627
17.3.3 传递复杂的数据类型 628
17.3.4 传递DataSet对象 639
17.3.5 传递XML文档 641
17.4 创建XML Web服务应用程序 642
17.4.1 作为ASP.NET应用的Web服务 643
17.4.2 事务处理和Web服务 651
17.4.3 将现存的应用程序作为Web服务来提供 653
17.5 本章小结 654
第18章 创建Web服务客户端 655
18.1 Web服务客户端 655
18.1.1 Web服务的客户端视图 656
18.1.2 使用Visual Studio .NET创建Web服务客户端 657
18.1.3 跨越简单的客户端方案 660
18.1.4 其他客户端类型 677
18.2 动态搜索Web服务 680
18.2.1 搜索服务器上的服务 681
18.2.2 通过UDDI搜索服务 686
18.3 本章小结 689
猜您喜欢