通过WCF Services多方面的任务进行分解,如消息传递、认证与授权,就可以进一步的了解WCF Services。现在讨论如何为intranet和internet应用程序等关键场景提供WCF安全保障。
介绍服务契约的设计,以及如何使用服务契约。首先,你会了解到服务契约的相关技术,包括服务契约的重载与继承以及其它高级技术。接下来,本章将深入探讨契约的设计要素,以利于系统的重用、可维护性与可扩展性。最后,本章演示了如何通过暴露的契约元数据完成运行时的交互编程。
如果客户端与服务的数据类型无法共享,如果没有采用相同的开发技术,那么应该如何处理它们之间数据的交换?通过本章,你可以看到一些有趣的现实问题,例如数据版本、元素集合的传递,究竟是如何处理的。#t#
究竟哪些服务实例处理何种客户端的请求,本章给与了一一的回答。WCF支持多种服务实例管理、激活与生命周期的管理,这些技术与系统规模、性能息息相关。本章介绍了每种实例管理模式之间的关系,指导读者何时以及如何有效地利用它们。本章介绍了与实例管理相关的论题,例如分流(throttling)。
通过处理操作类型,使得客户端能够调用服务,并遵循相关的设计指导,例如如何改善和扩展基本功能,以支持回调的安装与销毁,管理回调端口与通道,提供类型安全的双向代理(duplex proxies)。
本章全面介绍了服务如何报告错误,然后如何将异常回送给客户端。既然异常与异常处理的创建是与特定技术紧密结合的,因而无法跨越服务边界。本章深入探讨了有关错误处理的最佳实践,使得客户端的错误处理与服务实现解耦。同时,本章还演示了如何扩展和改善WCF基本的错误处理机制。
本章一开始从整体上介绍了事务的动机,接着讨论了事务服务的方方面面,包括:事务管理架构、事务传播配置(transaction propagation configuration)、WCF提供的声明性事务支持、以及客户端创建事务的方法。本章末尾则讨论了相关的设计指导,例如事务服务状态管理与实例化模型。
WCF针对并发与同步的管理,提供了强大然而简单的声明式实现。本章详细地介绍这一实现方式。然后,本章还展现了更多的高级技术,诸如回调、可重入性(reentrancy)、线程关联度(thread affinity)、同步上下文以及避免死锁的最佳实践与指导。