WCF替代了Microsoft的所有早期Web服务技术。它的功能还远远超过了传统上所谓的“ Web服务”。
WCF“ Web服务”是通过WCF启用的更广泛的远程通信范围的一部分。与通过传统的ASMX相比,在WCF中处理服务器的灵活性和可移植性要高得多,因为WCF从头开始设计是用来总结Microsoft提供的所有不同的分布式编程基础结构。WCF中的端点可以通过SOAP / XML进行通信,就像通过TCP / binary进行通信一样容易,而更改此媒体只是一个配置文件mod。从理论上讲,这减少了在移植或更改业务需求,目标等时所需的新代码量。
ASMX is older than WCF, and anything ASMX can do so can WCF (and more)。基本上,您可以看到WCF试图在逻辑上将所有不同的方式组合在一起,以使两个应用程序在Microsoft领域进行通信。ASMX只是众多方式中的一种,因此现在被归类为WCF的功能范围。
Web服务只能通过HTTP进行访问,并且可以在无状态环境中使用,因为WCF可以在不同类型的应用程序中托管,因此WCF十分灵活。托管WCF服务的常见方案是IIS,WAS,自托管,托管Windows服务。
主要区别在于Web服务使用XmlSerializer。但是WCF使用的DataContractSerializer在性能上比XmlSerializer更好。
在什么情况下必须使用WCF
- 处理业务交易的安全服务。一项服务
- 向其他人提供当前数据,例如路况报告或其他
- 监控服务。允许两个人聊天的聊天服务
- 实时交流或交换数据。仪表板应用程序
- 轮询一个或多个服务以获取数据并以逻辑方式呈现
- 介绍。公开使用Windows工作流程实现的工作流程
- 作为WCF服务的基础。一个Silverlight应用程序来轮询
- 最新数据提要服务。
WCF的功能
- 服务定位
- 互通性
- 多种消息模式
- 服务元数据
- 数据合约
- 安全
- 多种传输和编码
- 可靠且排队的消息
- 持久消息
- 交易次数
- AJAX和REST支持
- 可扩展性
来源:主要文字来源