Web服务-WCF与ASMX("标准")
时间:2020-03-05 18:38:45 来源:igfitidea点击:
我正在做一个新项目。与常规的旧式Web服务相比,使用WCF Web服务有什么好处吗?
Visual Studio提供了两者的模板。有什么区别?利弊?
解决方案
回答
自己做所有事情的优点是:
- 没有学习曲线
- 非常灵活
WCF的优点是:
- 从长远来看,花费更少的时间
- 无需编程即可切换协议
WCF的缺点:一些静态属性名称可能会很长。
总结一下:WCF让我们专注于编程,但是我们需要首先学习它;-)
回答
我喜欢编写WCF服务可以轻松将服务与实现分开的事实。我们可以编写服务,然后将其托管在IIS,控制台应用程序或者Windows服务中。我们还可以通过HTTP,Net TCP等与之对话。
回答
什么是"常规的老式Web服务"? ASMX服务,还是我们也使用WSE? ASMX服务不是自然可互操作的,不支持WS- *规范,并且ASMX是一项技术,其老化速度非常快。 WSE(Web服务增强)服务确实添加了对WS- *的支持,并且可以使其互操作,但是WCF旨在替代WSE,因此我们应该花一些时间来学习它。我要说的是,除非应用程序很快就变成了一次性应用程序,否则如果我们选择WCF,我们将获得巨大的灵活性并获得更好的设计。 WCF确实有一个超出[WebMethod]属性的学习曲线,但是我认为该学习曲线被过度夸大了,并且它比传统的ASMX服务具有指数般的强大和面向未来的证明。
除非时间线根本无法忍受学习曲线,否则我们将为自己学习WCF锦上添花,而不仅仅是坚持使用ASP.NET Web服务。应用程序将只会越来越多地变得越来越分散和互连,而WCF是Microsoft平台上的分布式计算的未来。
这是两者之间的比较。
回答
WCF专业版:我们不需要Web服务器(即IIS)。我们实际上不需要服务器操作系统。
回答
对服务实现和交互进行单元测试更容易!