WCF全面解析 上PDF电子书下载
- 电子书积分:17 积分如何计算积分?
- 作 者:蒋金楠著
- 出 版 社:北京:电子工业出版社
- 出版年份:2012
- ISBN:9787121166563
- 页数:560 页
第1章 WCF简介(WCF Overview) 1
1.1 SOA的基本概念和设计思想 2
1.2 WCF是对现有分布式通信技术的整合 3
1.3 构建一个简单的WCF应用 6
第2章 地址(Address) 18
2.1 统一资源标识(URI) 19
2.1.1 HTTP/HTTPS 19
2.1.2 Net.TCP 20
2.1.3 Net.Pipe 20
2.1.4 Net.Msmq 21
2.2 EndpointAddress 21
2.2.1 服务端终结点地址 22
2.2.2 客户端终结点地址 29
2.2.3 地址报头 32
2.3 端口共享 41
2.3.1 端口共享意义何在 43
2.3.2 HTTP|HTTPS端口共享 43
2.3.3 TCP端口共享 44
2.4 逻辑地址与物理地址 47
2.4.1 服务的角色 47
2.4.2 监听地址与监听模式 48
2.4.3 ClientViaBehavior行为 52
2.4.4 实例演示:通过tcpTrace进行消息的路由(S205,S206) 54
2.5 请求监听与消息分发 60
2.5.1 连接请求的监听 61
2.5.2 消息分发 62
第3章 绑定(Binding) 65
3.1 绑定模型 66
3.1.1 信道与信道栈 66
3.1.2 实例演示:直接通过绑定进行消息通信(S301) 68
3.1.3 WCF的绑定模型 71
3.2 信道与信道栈 72
3.2.1 CommunicationObject 72
3.2.2 DefaultCommunicationTimeouts 74
3.2.3 IChannel和ChannelBase 75
3.2.4 消息交换模式 76
3.2.5 信道形状 77
3.2.6 会话信道 81
3.2.7 实例演示:自定义信道(S302) 83
3.3 信道监听器 87
3.3.1 IChannelListener与ChannelListenerBase 87
3.3.2 信道栈的创建/使用模式 88
3.3.3 实例演示:自定义信道监听器(S302) 88
3.4 信道工厂 91
3.4.1 IChannelFactory与ChannelFactoryBase 91
3.4.2 实例演示:自定义信道工厂(S302) 92
3.5 绑定元素 93
3.5.1 构成绑定的元素 94
3.5.2 实例演示:自定义绑定元素(S302) 95
3.6 绑定 96
3.6.1 绑定是绑定元素的有序集合 97
3.6.2 实例演示:创建自定义绑定(S302,S303) 99
3.6.3 系统绑定 105
3.6.4 自定义绑定 109
3.6.5 绑定配置 110
第4章 契约(Contract) 114
4.1 多角度认识契约 115
4.1.1 抽象、接口与服务契约 115
4.1.2 元数据与服务契约 116
4.1.3 WSDL、XSD与服务契约 116
4.1.4 消息交换与服务契约 117
4.2 定义服务契约 117
4.2.1 ServiceContractAttribute 117
4.2.2 OperationContractAttribute 122
4.2.3 服务契约的继承 128
4.3 契约描述 132
4.3.1 ContractDescription 132
4.3.2 OperationDescription 133
4.3.3 MessageDescription 134
4.4 消息交换模式与服务操作 139
4.4.1 请求-回复模式 139
4.4.2 单向模式 143
4.4.3 双工模式 144
4.4.4 实例演示:通过双工通信实现回调 145
4.5 多线程与异步操作 153
4.5.1 异步服务调用 154
4.5.2 异步服务实现 157
4.6 操作的选择与执行 160
4.6.1 DispatchOperation与ClientOperation 160
4.6.2 操作的选择 162
4.6.3 操作的执行 163
第5章 序列化(Serialization) 165
5.1 XmlSerializer 166
5.1.1 XmlSerializer默认的序列化规则 166
5.1.2 通过定制XmlSerializer控制XML结构 169
5.1.3 通过定制数据类型控制XML结构 170
5.2 数据契约 171
5.2.1 数据契约的本质 172
5.2.2 DataContractAttribute与DataMemberAttribute 172
5.3 DataContractSerializer 174
5.3.1 DataContractSerializer的序列化规则 176
5.3.2 如何限定序列化对象的数量 178
5.3.3 如何保持对象现有的引用结构 181
5.4 已知类型 184
5.4.1 未知类型导致序列化失败 184
5.4.2 DataContractSerializer的已知类型集合 186
5.4.3 基于接口的序列化 187
5.4.4 KnownTypeAttribute 188
5.4.5 ServiceKnownTypeAttribute 190
5.5 泛型数据契约与集合数据契约 191
5.5.1 泛型数据契约 191
5.5.2 数据契约集合 195
5.5.3 集合数据契约 199
5.5.4 字典数据契约 203
5.6 等效数据契约 208
5.6.1 数据契约的等效性 208
5.6.2 数据成员的添加 209
5.6.3 数据成员的删除 212
5.6.4 数据契约代理 215
5.7 序列化在WCF框架中的实现 219
5.7.1 消息格式化器 219
5.7.2 采用DataContractSerializer还是XmlSerializer 221
5.7.3 实例演示:通过自定义消息格式化器压缩消息(S521) 223
第6章 消息(Message) 231
6.1 SOAP与WS-Addressing 232
6.1.1 SOAP 232
6.1.2 WS-Addressing 232
6.2 消息 234
6.2.1 消息版本 235
6.2.2 如何创建消息 237
6.2.3 消息的基本操作 244
6.3 消息报头与消息属性 249
6.3.1 MessageHeaderInfo 249
6.3.2 MessageHeader 250
6.3.3 MessageHeader<T> 251
6.3.4 MessageHeaders 252
6.3.5 消息属性 255
6.3.6 实例演示:通过消息报头和消息属性实现上下文信息的传播(S612) 259
6.4 消息契约 261
6.4.1 MessageContractAttribute 262
6.4.2 MessageHeaderAttribute 265
6.4.3 MessageBodyMemberAttribute 265
6.4.4 消息契约与操作 266
6.5 XML编码 268
6.5.1 XmlDictionary 268
6.5.2 XmlDictionaryWriter 270
6.5.3 XmlDictionaryReader 278
6.6 消息编码 279
6.6.1 消息编码器 279
6.6.2 消息编码器工厂 280
6.6.3 消息编码绑定元素 281
6.6.4 消息编码与绑定 282
6.6.5 消息编码的实现 285
6.6.6 实例演示:通过自定义消息编码器实现消息压缩(S620) 286
第7章 服务寄宿(Hosting) 294
7.1 服务描述 295
7.1.1 ServiceDescription 295
7.1.2 WCF的四大行为 297
7.2 ServiceHost 301
7.2.1 服务描述的创建(S701) 301
7.2.2 运行时框架体系的构建 308
7.2.3 服务的批量寄宿(S702) 312
7.2.4 自定义ServiceHost(S703) 316
7.3 IIS与ASP.NET架构设计 317
7.3.1 IIS 5.x与ASP.NET 318
7.3.2 IIS 6.0与ASP.NET 319
7.3.3 IIS 7.0与ASP.NET 320
7.3.4 ASP.NET管道 324
7.4 IIS寄宿 328
7.4.1 .svc文件 328
7.4.2 实例演示:如何使用自定义ServiceHost(S704) 330
7.4.3 ASP.NET并行模式 331
7.4.4 ASP.NET兼容模式 337
7.4.5 非HTTP协议寄宿 341
7.5 Windows服务寄宿(S708) 343
第8章 客户端(Client) 350
8.1 一个精简版的WCF框架 351
8.1.1 从透明代理和真实代理说起 351
8.1.2 服务代理的真实代理是什么 352
8.1.3 服务调用的大致流程 353
8.1.4 实例演示:创建一个WCF框架模拟程序(S801) 354
8.2 ChannelFactory<TChannel> 365
8.2.1 终结点是ChannelFactory<TChannel>的核心 366
8.2.2 一个特殊的信道工厂 366
8.2.3 ChannelFactory<TChannel>的开启 367
8.3 服务代理 369
8.3.1 服务代理的创建 369
8.3.2 四个重要的接口 370
8.3.3 服务调用 374
8.4 ClientBase<TChannel> 376
8.4.1 ClientBase<TChannel>与ChannelFactory<TChannel> 376
8.4.2 ChannelFactory<TChannel>缓存机制 378
8.5 服务代理的关闭与中止 380
8.5.1 没有关闭服务代理会带来怎样的后果 380
8.5.2 数据报信道与会话信道 382
8.5.3 服务代理、ChannelFactory<TChannel>和ClientBase<TChannel>的关闭 383
8.5.4 服务代理的中止 385
8.5.5 通过RealProxy实现服务代理的自动关闭和中止(S810) 389
8.5.6 通过委托实现服务代理的自动关闭和中止(S811) 391
第9章 实例化与会话(Instancing and Session) 395
9.1 实例上下文与实例上下文模式 396
9.1.1 实例上下文 396
9.1.2 实例上下文模式 397
9.1.3 实例服务行为 398
9.1.4 实例上下文提供者与实例提供者 399
9.1.5 实例上下文提供机制 400
9.2 单调模式 402
9.2.1 实例演示:单调模式下实例的创建与回收(S901) 402
9.2.2 单调模式实例上下文提供机制 403
9.2.3 实例演示:通过自定义实例上下文提供者实现单调模式(S902) 404
9.2.4 单调模式与可伸缩性 406
9.3 单例模式 407
9.3.1 已知单例和隐式单例 407
9.3.2 实例演示:单例模式下实例的创建与回收(S903) 408
9.3.3 单例模式实例上下文提供机制 409
9.3.4 实例演示:通过自定义实例上下文提供者实现单例模式(S904) 410
9.3.5 单例模式下的并发与同步 412
9.4 会话 413
9.4.1 客户端识别机制 414
9.4.2 会话契约 414
9.4.3 会话绑定 419
9.5 会话模式 421
9.5.1 实例演示:会话模式下实例的创建与回收(S910) 421
9.5.2 会话模式实例上下文提供机制 422
9.5.3 实例演示:通过自定义提供者实现会话模式(S911) 424
9.5.4 会话实例上下文模式与可伸缩性 426
9.6 会话模式、绑定与实例上下文模式 427
9.6.1 单调服务决定于单调实例上下文模式 427
9.6.2 单例服务决定于单例实例上下文模式 429
9.6.3 会话服务决定于会话信道(栈)和会话实例上下文模式 430
第10章 REST服务(REST Service) 433
10.1 Web、REST和WCF REST 434
10.1.1 Web如此简单 434
10.1.2 REST是什么 435
10.1.3 WCF REST 438
10.2 Web HTTP编程模型 445
10.2.1 WebHttpBinding 445
10.2.2 WebGetAttribute与WebInvokeAttribute 449
10.2.3 WebHttpBehavior 454
10.2.4 WebServiceHost与WebServiceHostFactory 459
10.2.5 WebOperationContext 461
10.2.6 WebFaultException与WebFaultException<T> 463
10.3 URI模板 465
10.3.1 URI模板简介 465
10.3.2 UriTemplate 467
10.3.3 UriTemplateTable 468
10.3.4 WebHttpDispatchOperationSelector 469
10.4 消息格式化 473
10.4.1 客户端消息格式化 473
10.4.2 服务端消息格式化 485
10.5 输出缓存与条件获取/更新 487
10.5.1 输出缓存 488
10.5.2 条件获取 492
10.5.3 条件更新 496
第11章 WCF实例研究(WCF in Practice) 500
11.1 VM简介 501
11.1.1 基本功能 501
11.1.2 物理部署 504
11.1.3 模块划分 504
11.1.4 层次设计 506
11.1.5 IoC的应用 508
11.1.6 AOP的应用 513
11.1.7 身份认证 515
11.1.8 异常处理 520
11.2 模块设计 523
11.2.1 数据库设计 524
11.2.2 Products模块 526
11.2.3 Orders模块 536
11.2.4 Infrastructure模块 540
11.3 ASP.NET MVC项目 544
11.3.1 IoC集成 545
11.3.2 异常处理 546
11.3.3 AccountController 547
11.3.4 ProductsController 549
11.3.5 OrdersController 551
附录A 实例列表 557
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《数字影视特效制作技法解析》王文瑞著 2019
- 《2019国家医师资格考试用书 中医执业助理医师资格考试全真模拟试卷与解析 第3版》国家医师资格考试研究组 2019
- 《储望华钢琴作品演奏解析》陈国红著 2019
- 《中药学综合知识与技能 全解析 2016版》田磊编著 2016
- 《考研大纲2016全国硕士研究生招生考试 西医综合考试大纲解析 高教版》杨净;;王棋然 2015
- 《新领域、新业态发明专利申请热点案例解析》肖光庭 2019
- 《ROS机器人编程与SLAM算法解析指南》陶满礼 2020
- 《篮球高手 巨星招数漫画解析》杨洪博,卫亮亮,马青编著;杨洪博绘图 2018
- 《中药学专业知识 2 全解析 2016版》田磊编著 2016
- 《电子测量与仪器》人力资源和社会保障部教材办公室组织编写 2009
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《电子应用技术项目教程 第3版》王彰云 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017