加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 与WCF和其他Web服务有什么区别?

发布时间:2020-12-15 23:52:38 所属栏目:asp.Net 来源:网络整理
导读:我对WCF和其他Web服务(例如asp.net ASMX,.net Remoting)感到困惑,任何人都可以告诉我与WCF和其他人有什么区别,我应该何时使用它,谢谢! 解决方法 WCF是一个通信堆栈,允许通过HTTP(如ASMX)和TCP(如Remoting)以及命名管道(实际上是一个机器内跨进程调用),MSMQ
我对WCF和其他Web服务(例如asp.net ASMX,.net Remoting)感到困惑,任何人都可以告诉我与WCF和其他人有什么区别,我应该何时使用它,谢谢!

解决方法

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

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

这样做的好处是能够编写一次服务,并允许许多不同类型的客户端使用相同的服务(即Java客户端可以使用HTTP,.NET客户端可以使用TCP,传统可以使用MSMQ等).

WCF仍然允许您使用每个传输的所有功能,包括安全性,事务,可靠的消息传递等,但您需要谨慎使用.并非所有功能都适用于所有传输,您需要进行相应的设计. WCF允许您在合同中指定需要哪些功能.这可以防止somone以不支持所需功能集的方式尝试公开您的服务(即,如果您的服务需要事务,则WCF运行时将不允许通过基本HTTP端点访问服务).

WCF还可以通过自定义行为(它影响WCF运行时的工作方式)和自定义通道(控制WCF服务如何与外部世界通信)进行扩展.

与ASMX相比,WCF有一点学习曲线,但ABSOLUTLY的优势在于延缓了这一学习曲线的重要性.

希望有所帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读