《WCF全面解析》(上册)- 目录

第1章  WCF简介 (WCF Overview)    1
   1.1  SOA的基本概念和设计思想    3
   1.2  WCF是对现有分布式通信技术的整合    4
   1.3  构建一个简单的WCF应用    6
       步骤一、构建整个解决方案    7
       步骤二、创建服务契约    8
       步骤三  创建服务    8
       步骤四  通过自我寄宿的方式寄宿服务    9
       步骤五  创建客户端调用服务    12
       步骤六  通过IIS寄宿服务(S104)    15 
第2章  地址(Address)    18
   2.1.    统一资源标识符(URI)    20
       2.1.1.    HTTP/HTTPS    20
       2.1.2.    NET.TCP    21
       2.1.3.    Net.Pipe    21
       2.1.4.    Net.Msmq    21
   2.2.    EndpointAddress    23
       2.2.1.    服务端终结点地址    23
       2.2.2.    客户端终结点地址    29
       2.2.3.    地址报头    32
   2.3.    端口共享    42
       2.3.1.    端口共享意义何在?    43
       2.3.2.    HTTP|HTTPS端口共享    43
       2.3.3.    TCP端口共享    43
   2.4.    逻辑地址与物理地址    47
       2.4.1.    服务的角色    47
       2.4.2.    监听地址与监听模式    48
       2.4.3.    ClientViaBehavior行为    51
       2.4.4.    实例演示:通过tcpTrace进行消息的路由(S205,S206)    53
   2.5.    请求监听与消息分发    60
       2.5.1.    连接请求的监听(S208)    60
       2.5.2.    消息分发    61
第3章  绑定 (Binding)    64
   3.1.    绑定模型    66
       3.1.1.    信道与信道栈    66
       3.1.2.    实例演示:直接通过绑定进行消息通信(S301)    67
       3.1.3.    WCF的绑定模型    70
   3.2.    信道与信道栈    72
       3.2.1.    CommunicationObject    72
       3.2.2.    DefaultCommunicationTimeouts    73
       3.2.3.    IChannel和ChannelBase    74
       3.2.4.    消息交换模式    75
       3.2.5.    信道形状    76
       3.2.6.    会话信道    80
       3.2.7.    实例演示:自定义信道(S302)    81
   3.3.    信道监听器    86
       3.3.1.    IChannelListener与ChannelListenerBase    86
       3.3.2.    信道栈的创建/使用模式    87
       3.3.3.    实例演示:自定义信道监听器(S302)    87
   3.4.    信道工厂    90
       3.4.1.    IChannelFactory与ChannelFactoryBase    90
       3.4.2.    实例演示:自定义信道工厂(S302)    90
   3.5.    绑定元素    93
       3.5.1.    构成绑定的元素    93
       3.5.2.    实例演示:自定义绑定元素(S302)    94
   3.6.    绑定    96
       3.6.1.    绑定是绑定元素的有序集合    96
       3.6.2.    实例演示:创建自定义绑定(S302,S303)    98
       3.6.3.    系统绑定    103
       3.6.4.    自定义绑定    107
       3.6.5.    绑定配置    108 
第4章  契约 (Contracts)    111
   4.1.    多角度认识契约    113
       4.1.1.    抽象、接口与服务契约    113
       4.1.2.    元数据与服务契约    113
       4.1.3.    WSDL、XSD与服务契约    114
       4.1.4.    消息交换与服务契约    114
   4.2.    定义服务契约    115
       4.2.1.    ServiceContractAttribute    115
       4.2.2.    OperationContractAttribute    119
       4.2.3.    服务契约的继承    125
   4.3.    契约描述    129
       4.3.1.    ContractDescription    129
       4.3.2.    OperationDescription    130
       4.3.3.    MessageDescription    131
   4.4.    消息交换模式与服务操作    136
       4.4.1.    请求-回复模式    136
       4.4.2.    单向模式    139
       4.4.3.    双工模式    140
       4.4.4.    实例演示:通过双工通信实现回调    141
   4.5.    多线程与异步操作    149
       4.5.1.    异步服务调用    149
       4.5.2.    异步服务实现    153 
   4.6.    操作的选择与执行    156
       4.6.1.    DispatchOperation与ClientOperation    156
       4.6.2.    操作的选择    157
       4.6.3.    操作的执行    158
第5章  序列化 (Serialization)    160
   5.1.    XmlSerializer    162
       5.1.1.    XmlSerializer默认的序列化规则    162
       5.1.2.    通过定制XmlSerializer控制XML结构    165
       5.1.3.    通过定制数据类型控制XML结构    166
   5.2.    数据契约    168
       5.2.1.    数据契约的本质    168
       5.2.2.    DataContractAttribute与DataMemberAttribute    169
   5.3.    DataContractSerializer    171
       5.3.1.    DataContractSerializer的序列化规则    172
       5.3.2.    如何限定序列化对象的数量?    174
       5.3.3.    如何保持对象现有的引用结构?    177
   5.4.    已知类型    181
       5.4.1.    未知类型导致序列化失败    181
       5.4.2.    DataContractSerializer的已知类型集合    182
       5.4.3.    基于接口的序列化    183
       5.4.4.    KnownTypeAttribute    184
       5.4.5.    ServiceKnownTypeAttribute    186
   5.5.    泛型数据契约与集合数据契约    188
       5.5.1.    泛型数据契约    188
       5.5.2.    数据契约集合    191
       5.5.3.    集合数据契约    195
       5.5.4.    字典数据契约    198
   5.6.    等效数据契约    203
       5.6.1.    数据契约的等效性    203
       5.6.2.    数据成员的添加    203
       5.6.3.    数据成员的删除    207
       5.6.4.    数据契约代理    210
   5.7.    序列化在WCF框架中的实现    214
       5.7.1.    消息格式化器    214
       5.7.2.    DataContractSerializer还是XmlSerializer?    215
       5.7.3.    实例演示:通过自定义消息格式化器压缩消息(S521)    217
第6章  消息 (Message)    225
   6.1.    SOAP与WS-Addressing    227
       6.1.1.    SOAP    227
       6.1.2.    WS-Addressing    227
   6.2.    消息    230
       6.2.1.    消息版本    230
       6.2.2.    如何创建消息    232
       6.2.3.    消息的基本操作    238
   6.3.    消息报头与消息属性    243
       6.3.1.    MessageHeaderInfo    243
       6.3.2.    MessageHeader    244
       6.3.3.    MessageHeader<T>    245
       6.3.4.    MessageHeaders    245
       6.3.5.    消息属性    248
       6.3.6.    实例演示:通过消息报头和消息属性实现上下文信息的传播(S612)    251
   6.4.    消息契约    255
       6.4.1.    MessageContractAttribute    255
       6.4.2.    MessageHeaderAttribute    258
       6.4.3.    MessageBodyMemberAttribute    258
       6.4.4.    消息契约与操作    258
   6.5.    XML编码    262
       6.5.1.    XmlDictionary    262
       6.5.2.    XmlDictionaryWriter    264
       6.5.3.    XmlDictionaryReader    270
   6.6.    消息编码    272
       6.6.1.    消息编码器    272
       6.6.2.    消息编码器工厂    273
       6.6.3.    消息编码绑定元素    273
       6.6.4.    消息编码与绑定    274
       6.6.5.    消息编码的实现    277
       6.6.6.    实例演示:通过自定义消息编码器实现消息压缩(S620)    277
第7章  服务寄宿 (Hosting)    285
   7.1.    服务描述    287
       7.1.1.    ServiceDescription    287
       7.1.2.    WCF的四大行为    289 
   7.2.    ServiceHost    293
       7.2.1.    服务描述的创建(S701)    293
       7.2.2.    运行时框架体系的构建    299
       7.2.3.    服务的批量寄宿(S702)    302
       7.2.4.    自定义ServiceHost(S703)    305
   7.3.    IIS与ASP.NET架构设计    308
       7.3.1.    IIS 5.x与ASP.NET    308
       7.3.2.    IIS 6.0与ASP.NET    309
       7.3.3.    IIS 7.0与ASP.NET    310
       7.3.4.    ASP.NET管道    313
   7.4.    IIS寄宿    317
       7.4.1.    .svc文件    318
       7.4.2.    实例演示:如何使用自定义ServiceHost(S704)    319
       7.4.3.    ASP.NET并行模式    320
       7.4.4.    ASP.NET兼容模式    325
       7.4.5.    非HTTP协议寄宿    328
   7.5.    Windows 服务寄宿(S708)    332
第8章  客户端 (Client)    338
   8.1.    一个精简版的WCF框架    340
       8.1.1.    从透明代理和真实代理说起    340
       8.1.2.    服务代理的真实代理是什么?    341
       8.1.3.    服务调用的大致流程    342
       8.1.4.    实例演示:创建一个WCF框架模拟程序(S801)    343
   8.2.    ChannelFactory<TChannel>    353
       8.2.1.    终结点是ChannelFactory<TChannel>的核心    353
       8.2.2.    一个特殊的信道工厂    353
       8.2.3.    ChannelFactory<TChannel>的开启    354
   8.3.    服务代理    357
       8.3.1.    服务代理的创建    357
       8.3.2.    四个重要的接口    358
       8.3.3.    服务调用    360
   8.4.    ClientBase<TChannel>    363
       8.4.1.    ClientBase<TChannel>与ChannelFactory<TChannel>    363
       8.4.2.    ChannelFactory<TChannel>缓存机制    364
   8.5.    服务代理关闭与中止    367
       8.5.1.    没有关闭服务代理会带来怎样的后果?    367
       8.5.2.    数据报信道与会话信道    369
       8.5.3.    服务代理、ChannelFactory<TChannel>和ClientBase<TChannel>的关闭    369
       8.5.4.    服务代理的中止    371
       8.5.5.    通过RealProxy实现服务代理的自动关闭和中止(S810)    374
       8.5.6.    通过委托实现服务代理的自动关闭和中止(S811)    376
第9章  实例管理与会话 (Instancing and Sessions)    380
   9.1.    实例上下文与实例上下文模式    382
       9.1.1.    实例上下文    382
       9.1.2.    实例上下文模式    383
       9.1.3.    实例服务行为    384
       9.1.4.    实例上下文提供者与实例提供者    385
       9.1.5.    实例上下文提供机制    386
   9.2.    单调模式    388
       9.2.1.    实例演示:单调模式下实例的创建与回收(S901)    388
       9.2.2.    单调模式实例上下文提供机制    389
       9.2.3.    实例演示:通过自定义实例上下文提供者实现单调模式(S902)    389
       9.2.4.    单调模式与可伸缩性    391
   9.3.    单例模式    393
       9.3.1.    已知单例和隐式单例    393
       9.3.2.    实例演示:单例模式下实例的创建与回收(S903)    393
       9.3.3.    单例模式实例上下文提供机制    395
       9.3.4.    实例演示:通过自定义实例上下文提供者实现单例模式(S904)    395
       9.3.5.    单例模式下的并发与同步    397
   9.4.    会话    399
       9.4.1.    客户端识别机制    399
       9.4.2.    会话契约    399
       9.4.3.    会话绑定    404
   9.5.    会话模式    406
       9.5.1.    实例演示:会话模式下实例的创建与回收(S910)    406
       9.5.2.    会话模式实例上下文提供机制    406
       9.5.3.    实例演示:通过自定义提供者会话模式(S911)    408
       9.5.4.    会话实例上下文模式与可伸缩性    410
   9.6.    会话模式、绑定与实例上下文模式    412
       9.6.1.    单调服务决定于单调实例上下文模式    412
       9.6.2.    单例服务决定于单例实例上下文模式    414
       9.6.3.    会话服务决定于会话信道(栈)和会话实例上下文模式    414
第10章 REST 服务(REST Service)    418
   10.1.    Web、REST和WCF REST    420
       10.1.1.    Web如此简单    420
       10.1.2.    REST是什么?    421
       10.1.3.    WCF REST    423
   10.2.    Web HTTP编程模型模型    431
       10.2.1.    WebHttpBinding    431
       10.2.2.    WebGetAttribute与WebInvokeAttribute    434
       10.2.3.    WebHttpBehavior    439
       10.2.4.    WebServiceHost与WebServiceHostFactory    444
       10.2.5.    WebOperationContext    446
       10.2.6.    WebFaultException与WebFaultException<T>    447
   10.3.    URI模板    449
       10.3.1.    URI模板    449
       10.3.2.    UriTemplate    450
       10.3.3.    UriTemplateTable    451
       10.3.4.    WebHttpDispatchOperationSelector    452 
   10.4.    消息格式化    456
       10.4.1.    客户端消息格式化    456
       10.4.2.    服务端消息格式化    467
   10.5.    输出缓存与条件获取/更新    469
       10.5.1.    输出缓存    469
       10.5.2.    条件获取    472
       10.5.3.    条件更新    476
第11章  WCF实例研究 (WCF in Practice)    480
   11.1.    VM简介    482
       11.1.1.    基本功能    482
       11.1.2.    物理部署    484
       11.1.3.    模块划分    485
       11.1.4.    层次设计    486
       11.1.5.    IoC的应用    489
       11.1.6.    AOP的应用    493
       11.1.7.    身份认证    494
       11.1.8.    异常处理    499
   11.2.    模块设计    503
       11.2.1.    数据库设计    503
       11.2.2.    Products模块    505
       11.2.3.    Orders模块    514
       11.2.4.    Infrastructure模块    518
   11.3.    ASP.NET MVC项目    522
       11.3.1.    IoC集成    522
       11.3.2.    异常处理    523
       11.3.3.    AccountController    524
       11.3.4.    ProductsController    526
       11.3.5.    OrdersController    528

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
内容简介 出版日期: 2012年4月1日 《WCF全面解析(套装上下册)》由蒋金楠所著,是作者多年潜心研究WCF技术的心血之作,也是这些年来从事WCF开发的经验总结。书如其名,此书涵盖了WCF几乎所有的知识点,并对其底层框架进行了“庖丁解牛”式的剖析,力求将WCF的整个运行机制完整而清晰地呈现在读者面前。 《WCF全面解析(套装上下册)》上册的前四章在对WCF进行总体介绍的基础上,对构成终结点的三要素(地址、绑定和契约)进行了系统说明;随后的两章则着重剖析序列化和消息编码在WCF中的实现;第7、8章讲述了在服务寄宿和操作调用过程中,WCF的服务端和客户端框架分别为我们做了什么;第9、10章将介绍的重点落在实例化、会话和REST服务上面;在最后一章中采用WCF构建了一个具体的电子商务网站VM,它将指导你如何将理论应用于实践。 《WCF全面解析(套装上下册)》的下册主要涉及一些所谓的“高级”话题,主要包括如何在分布式环境中处理异常(第1章);元数据的导入与导出、发布与获取如何实现(第2章);如何利用WCF对事务的支持将分布式事务引入服务(第3章);如何利用并发与限流机制提高服务的吞吐量和可用性(第4章);如何利用可靠会话机制确保消息的“使命必达”(第5章);如何利用队列服务提供离线通信的支持(第6章);第7、8章主要涉及安全的相关内容,包括传输安全、授权与审核;第9章全景展示WCF服务端和客户端的运行时框架,以及在此基础上的所有扩展可能;最后一章为你带来WCF4.0几个独立的新特性。 编辑推荐 《WCF全面解析(套装上下册)》不仅适合尚未接触过WCF,希望尽快入门并进行深入研究的开发人员使用,同样也适合对WCF有一定了解的开发设计人员和架构师阅读。相信不同层次的读者都能从此书中找到自己希望了解的部分。 《WCF全面解析(套装上下册)》的内容不仅适合尚未接触过WCF,希望尽快入门并进行深入研究的开发人员,同样适合对WCF具有一定了解的开发设计人员和架构师。相信不同层次的读者都能从本书中找到自己希望了解的部分。阅读本书的读者需要对.NET,包括对C#和.NET Framework具有一定的了解。如果读者具备了DCOM、Enterprise Library Service、.NET Remoting、Web Service、MSMQ及SOA相关的基础,对阅读此书尽快掌握WCF将大有裨益。 名人推荐我经历了COM时代,一直把Don Box的《COMM本质论》奉为我的指路明灯。能把SOA机理和WCF这种特定厂商实现的技术讲得如《COM本质论》一样完美透彻的,那必属Artech这本经过自己深研、实践而著的心血结晶——《WCF全面解析》。如果你想成为SOA和WCF方面的专家,那么这本书就是你的最好法宝。想想你作为专家而获得的回报,那么你对这本书购买所付出的,简直是太值了。 ——《走出软件作坊》 作者 明源软件CTO 阿朱 首先,金楠是—位工作在一线的优秀的WCF技术人员,这符合我对阅读技术图书的第一个要求和期待。其次,金楠的写作文笔、专业责任也给人以充分信任,这在金楠的文字中读者可以体会。这本《WCF全面解析全面剖析了构建WCF应用所需要的各方面技术,剥丝抽茧,由浅入深,也是我非常欣赏的技术讲述方式。我相信《WCF全面解析》—书是搞WCF朋友的案头必备。 ——祝成科技与Boolan.com创始人.NET技术专家 李建忠 知识全面、论述准确、逻辑严密是本书的特点。这是一本各层次开发人员都可以从中受益的书:对于初、中级开发人员,它可以帮助你获得WCF全方位的知识,系统地梳理WCF的知识结构,提升动手实践能力;对于高级开发人员,它既可以有效弥补你WCF相关知识中的盲点,又可以让你在自己熟悉的知识点上领略作者的看法和理解。 ——资深架构师 曲春雨 作者简介蒋金楠,网名Artech,现就职于某知名软件公司担任高级软件顾问。连续5届微软MVP(最有价值专家),同时也是少数的双料MVP(Solutions Architecture+Connected System)之一。国内较早接触WCF的人之一,2007年2月起在个人博客(http://www.cnblogs.com/artech)上发表超过两百篇深入介绍WCF的文章,成为了目前国内WCF在线资料的主要来源。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值