Web Service,WCF和Window Service之间有什么区别?

时间:2010-07-16 15:37:07

标签: windows wcf web-services service

我从Google那里得到了很多理论上的答案,即WCF比Web服务等更好。但我想从编程和实现的角度来看。我对编码很陌生,想知道我们如何实现所有这三种技术?它们有何不同,在哪种情况下我们应该使用哪些技术?

提前谢谢。

3 个答案:

答案 0 :(得分:5)

Web服务是一种通过网络连接(通常是互联网)进行托管的API,通常通过HTTP(或HTTPS)访问。

WCF是一个Microsoft .NET开发框架,可用于实现Web服务。也就是说,WCF服务是所有Web服务的子集。

Windows服务完全是一个独立的野兽:它们是在本地Windows机器上运行的长期运行的程序,通常没有用户交互和系统帐户。它们用于处理Windows中的许多内容,从低级驱动程序功能到软件更新。

答案 1 :(得分:1)

你真的在比较苹果和橘子。 Web服务只是一个可以使用HTTP协议“调用”的程序。通常,发送到服务的HTTP请求包含一些描述被调用方法和任何参数的XML。来自服务的响应同样包含带有返回值和任何输出参数的XML。它比这复杂一点,但它给你基本的想法。

Windows Communication Foundation(WCF)是用于构建网络服务的框架。如果您愿意,可以使用此框架构建Web服务。我怀疑是什么让你沮丧的是各种Visual Studio项目模板。您有一个用于WCF服务,一个用于Web服务。 Web服务模板构建在IIS内部运行的Web服务。 WCF模板为您提供了更大的灵活性(例如,您可以将Web服务作为独立的应用程序),但它要复杂得多。

如果您刚刚开始,我将从Web服务模板和基于IIS的Web服务开始。

答案 2 :(得分:1)

MSDN始终是一个很好的参考:

Web服务教程: http://msdn.microsoft.com/en-us/library/8wbhsy70%28VS.80%29.aspx

WCF教程: http://msdn.microsoft.com/en-us/library/ms734712.aspx

我认为通过这样做可以更容易学习。

祝你好运