WCF编程(第2版)

WCF编程(第2版)
作 者: 罗威 张逸 徐宁
出版社: 机械工业出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 程序设计
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  Juval Lowy是IDesign(一家咨询与培训公司,专注于使用微软COM+和.NET平台进行面向组件设计)的资深软件架构师与创始人。Juval Lowy可谓桃李满天下,参加WCF培训的学员数以万计,遍布全球。

内容简介

WCF是在微软Windows下开发面向服务应用程序(SOA)的统一平台,而《WCF编程(第2版)》则是介绍该项技术的权威指南和畅销书籍。《WCF编程(第2版)》被誉为WCF的最佳开发指南,提供了深入的技术剖析,而非死板的文档化描述,以帮助开发者掌握WCF的必备知识与技能,并构建可维护的、可扩展的以及可重用的WCF应用程序。作为微软授予的“软件英杰”,《WCF编程(第2版)》作者Juval Lowy参与了WCF最初的战略性设计的评审,以及对C# 3.0与.NET 3.5 SP1框架最新功能的修订工作。《WCF编程(第2版)》还包含了Lowy编写的ServiceModelEx框架,它提供了大量有用的工具、辅助类和实用程序,可以帮助开发者简化与自动化任务,并对WCF进行了有效的扩充。通过《WCF编程(第2版)》,你可以:·了解WCF体系架构与必要的构建模块,包括诸如可靠性和传输会话之类的关键概念。·使用诸如服务托管、实例和并发管理、事务、离线队列服务和安全等内建特性。·借鉴ServiceModelEx框架中的相关设计方案、技巧和最佳实践,提高WCF服务开发的效率与质量。·深入了解隐藏在设计决策背后的基本原理,对于SOA开发中缺乏文档而又晦涩难懂的功能特性进行了深度分析。对于WCF编程,我们不仅要知其然,更要知其所以然。《WCF编程(第2版)》正是基于这样的目的,它不仅能够帮助你掌握WCF,还能够让你成为一位优秀的软件工程师。

图书目录

序1

序2

前言

第1章 WCF基础

什么是WCF

服务

地址

TCP地址

HTTP地址

IPC地址

MSMQ地址

对等网地址

契约

托管

IIS 5/6托管

自托管

WAS托管

在IIS/WAS中的自定义宿主

绑定

常用绑定

格式与编码

选择绑定

附加绑定

使用绑定

终结点

管理方式配置终结点

编程方式配置终结点

元数据交换

管理方式启用元数据交换

编程方式启用元数据交换

元数据交换终结点

元数据浏览器

客户端编程

生成代理

管理方式配置客户端

编程方式配置客户端

为WCF提供的测试客户端

编程方式配置与管理方式配置

WCF体系架构

使用通道

传输层会话

传输会话与绑定

传输会话的终止

可靠性

绑定、可靠性以及有序消息

配置可靠性

必备有序传递

第2章 服务契约

操作重载

契约的继承

服务契约的分解与设计

契约分解

分解准则

契约查询

编程处理元数据

MetadataHelper类

第3章 数据契约

序列化

.NET序列化

WCF格式器

序列化数据契约

数据契约特性

导入数据契约

数据契约与Serializable特性

数据契约推断

合成的数据契约

数据契约事件

共享数据契约

数据契约层级

已知类型

服务已知类型

多个已知类型

配置已知类型

Object与接口

数据契约等效性

序列化顺序

版本控制

新增成员

缺失成员

版本控制的双向传递

枚举

委托与数据契约

数据集与数据表

使用数组,而不是数据表

使用LINQ to SQL

泛型

集合

具体集合类型

自定义集合

CollectionDataContract特性

引用集合

字典集合

第4章 实例管理

行为

单调服务

单调服务的优势

配置单调服务

单调服务与传输会话

设计单调服务

选择单调服务

会话服务

配置私有会话

会话与可靠性

会话ID

会话终止

单例服务

初始化单例服务

选择单例服务

分步操作

实例停用

配置为ReleaseInstanceMode.None

配置为ReleaseInstanceMode.BeforeCall

配置为ReleaseInstanceMode.AfterCall

配置为ReleaseInstanceMode.BeforeAndAfterCall

显式停止

使用实例停止

持久服务

持久服务和实例管理模式

实例ID与持久存储器

显式的实例ID

在消息头中的实例ID

为实例ID提供的上下文绑定

自动持久行为

限流

配置限流

绑定中的限流连接

第5章 操作

请求-应答操作

单向操作

配置单向操作

单向操作与可靠性

单向操作与会话服务

单向操作与异常

回调操作

回调契约

客户端回调设置

服务端回调调用

回调连接管理

双向代理与类型安全

双向通道工厂

回调契约层级

回调、端口与通道

事件

流操作

I/O流

流操作与绑定

流操作与传输

流操作的管理

第6章 错误

错误隔离与解耦

错误屏蔽

通道故障

错误传播

错误契约

调试错误

错误与回调

错误处理扩展

提供错误

处理错误

安装错误处理扩展

宿主与错误扩展

回调与错误扩展

第7章 事务

恢复的挑战

事务

事务型资源

事务属性

事务管理

WCF资源管理器

事务传播

事务流与绑定

事务流与操作契约

单向调用

事务协议和管理器

协议与绑定

事务管理器

事务管理器的提升

事务类

环境事务

本地事务与分布式事务

事务型服务编程

设置环境事务

事务传播模式

投票与完成

事务隔离性

事务超时

显式事务编程

TransactionScope类

事务流管理

非服务型客户端

服务状态管理

实例管理与事务

单调事务型服务

会话事务型服务

事务型持久服务

事务型行为

事务型单例服务

实例模式与事务

回调

回调事务模式

回调投票

使用事务型回调

第8章 并发管理

实例管理与并发

服务并发模式

ConcurrencyMode.Single

ConcurrencyMode.Multiple

ConcurrencyMode.Reentrant

实例与并发访问

单调服务

会话服务与单例服务

资源与服务

访问死锁

避免死锁

资源同步上下文

.NET同步上下文

UI同步上下文

服务同步上下文

在UI线程上托管服务

将窗体定义为一个服务

UI线程与并发管理

定制服务同步上下文

线程池同步器

线程关联度

优先级处理

回调与客户端安全

ConcurrencyMode.Single回调

ConcurrencyMode.Multiple回调

ConcurrencyMode.Reentrant回调

回调与同步上下文

回调与UI同步上下文

回调定制同步上下文

异步调用

异步机制的必备条件

基于代理的异步调用

异步调用

轮询或等待完成

完成回调

单向异步操作

异步错误处理

异步调用与事务

同步调用与异步调用

第9章 队列服务

离线服务与客户端

队列调用

队列调用架构

队列契约

配置与安装

事务

传递及回放

服务事务配置

非事务型队列

实例管理

单调队列服务

会话型队列服务

单例服务

并发管理

传递故障

死信队列

存活时间

配置死信队列

处理死信队列

回放失败

有害消息

MSMQ 4.0中对有害消息的处理

在MSMQ 3.0上的有害消息处理

队列调用与联机调用

要求使用队列

响应服务

设计一个响应服务契约

客户端编程

队列服务端编程

响应服务端编程

事务

HTTP桥

设计HTTP桥

事务配置

服务端配置

客户端配置

第10章 安全

身份验证

授权

传输安全

传输安全模式

传输安全模式的配置

Transport Security模式与凭证

Message Security模式与凭证

身份管理

总体策略

场景驱动方式

局域网应用程序场景

保证局域网绑定的安全

强制消息保护

身份验证

身份

安全调用上下文

模拟

授权

身份管理

回调

互联网应用程序场景

保证互联网绑定的安全

消息保护

身份验证

使用Windows凭证

使用ASP.NET Provider

身份管理

回调

B2B应用程序场景

确保B2B绑定的安全

身份验证

授权

身份管理

回调

宿主的安全配置

匿名应用程序场景

确保匿名绑定的安全

身份验证

授权

身份管理

回调

无安全场景

不保证绑定的安全

身份验证

授权

身份管理

回调

场景总结

声明式安全框架

SecurityBehaviorAttribute特性

宿主端的声明式安全

客户端声明式安全

安全审核

配置安全审核

声明式安全审核

附录A 面向服务概述

附录B 消息头和上下文

附录C 发布-订阅服务

附录D 代码访问安全

附录E 通用拦截器

附录F WCF编码规范

附录G ServiceModelEx分类