WCF概述
WCF,Windows Communication Foundation,是用于构建面向服务(SOA)的应用程序框架。借助WCF,可以将数据作为异步消息从一个服务终结点(EndPoint)发送至另一个服务终结点。服务终结点可以是有IIS承载的持续可用的服务的一部分,也可以是应用程序中承载的服务。终结点可以是服务终结点请求数据的服务客户端。
WCF的主要功能有:
服务导向,WCF是一种SOA框架,依赖Web服务发送和接收数据。Web服务具有松耦合的优点,向外只提供地址和协定。
互操作性, WCF实现了Web服务互操作性的现代行业标准。
多种消息模式,WCF提供了三种消息模式:请求/答复模式、单向模式、双工交换模式。
服务元数据,WCF支持使用行业标准中指定的个数发布服务元数据。
数据协定,WCF提供了通用类型的协定,在服务与客户端直接达成的正式协议,用于以抽象方式描述要交换的数据。也就是说,为了进行通信,客户端和服务不必共享相同的类型,而只需共享相同的数据协定。
安全性,WCF可以对消息加密以保护隐私,而且可以要求用户对自身进行身份验证,然后才允许接收消息。
多种传输方式,WCF可以通过多种内置的传输协议(HTTP、TCP、Name Pipe、MSMQ)发送信息。
多种编码方式,WCF的消息的编码方式可以是文本、也可以是二进制,还可以是MTOM。
可靠的消息队列,WCF 支持使用通过 WS-ReliableMessaging 实现的可靠会话并使用 MSMQ 进行可靠的消息交换。
持久性消息,WCF不会因通信中断而丢失消息,消息会始终保持到数据库中,如果发生中断,可以在恢复连接后恢复消息交换。
事务,WCF支持三种事务模型:WS-AtomicTtransactions、System.Transactions命名空间中的API、Microsoft分布式事务协调器。
AJAX和REST支持,WCF可以通过配置处理为包装在SOAP信封中的“纯”XML数据,还可以通过扩展只需特定的XML格式(JSON、ATOM等)。
可扩展性,WCF体系结构具有大量的扩展点。