当前位置:  开发笔记 > 后端 > 正文

与WCF和其他Web服务有什么区别?

如何解决《与WCF和其他Web服务有什么区别?》经验,为你挑选了1个好方法。

我对WCF和其他Web服务(例如asp.net ASMX,.net Remoting)感到困惑,任何人都可以告诉我与WCF和其他人有什么区别,我应该何时使用它,谢谢!



1> James Bender..:

WCF是一个通信堆栈,它允许通过HTTP(如ASMX)和TCP(如Remoting)以及命名管道(实际上是一个机器内跨进程调用),MSMQ和.NET 3.5 REST来公开服务.

它允许这样做,因为它将服务的通信部分与业务逻辑分离.您需要做的就是使用适当的合同属性([SeriviceContract],[OperationContract]和[DataContract])分别装饰您的服务类,方法和DTO.)

这不得不是能够写一次服务,并且允许许多不同类型的客户端消耗相同的服务(即Java客户端可以使用HTTP,.NET客户端可以使用TCP,传统的可以使用MSMQ等)的利益.

WCF将仍然允许你使用每个运输,包括安全性,事务,可靠消息等的所有功能,但你需要使用一些护理.并非所有功能都适用于所有传输,您需要进行相应的设计.WCF允许您在合同中指定需要哪些功能.这可以防止有人为从试图在不支持所需的功能集(即,如果您的服务要求的交易,WCF运行时将不允许通过一个基本的HTTP端点访问服务)的方式暴露你的服务.

WCF也是可扩展通过自定义行为(这影响WCF运行时是如何工作的)和自定义渠道(控制服务如何WCF与外界沟通.)

与ASMX相比,WCF有一点学习曲线,但ABSOLUTLY的优势在于减轻了学习曲线的负担.

希望有所帮助.

推荐阅读
mobiledu2402852357
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有