WCF与Web服务
Web服务(wca)和基于Web服务的通信方法是两种。
有关Web服务的详细信息
Web服务是应用程序的组件,可以使用诸如SOAP(简单对象访问协议)之类的开放协议来访问这些应用程序,SOAP是W3C开发的一种基于XML的语言,可以对数据进行编码和传输。SOAP使用XML描述数据,使用HTTP进行数据传输。这些开放协议提供的主要优势是服务的互操作性,尽管使用的平台和编程语言不同。Web服务使用(WSDL)Web服务描述语言(webservicesdescriptionlanguage)来描述服务,UDDI(通用描述、发现和集成)来列出可用的服务。Web服务不需要Web浏览器或HTML来操作,并且可能包含也可能不包含应用程序定义的GUI。Web服务可以用ASP.NET.
有关Windows Communication Foundation(WCF)的详细信息
早期引入了面向web服务的应用平台,取代了Windows的基础架构。互操作性和多个消息模式、服务元数据、数据契约和多个传输编码是WCF的特性。持久消息、AJAX和REST以及安全事务特性比早期的web服务为平台增加了更多的通用性。
Web服务和WCF有什么区别?•Web服务可以托管在IIS(Internet信息服务)或IIS外部,而WCF可以托管在IIS、WAS(Windows激活服务)中。WCF服务通常可以托管在IIS 5.1或6.0、作为IIS版本7.0的一部分提供的Windows Process Activation Service(WAS)以及任何.NET应用程序中。要在IIS版本5.1或6.0中托管web服务,必须使用HTTP作为通信传输协议。•在web服务平台中,web服务属性将添加到类的顶部,而在WCF中,将有一个服务协定属性。类似地,Web方法属性被添加到Web服务的方法之上,而在WCF中,服务操作契约将添加到顶部方法上。•Web服务使用XML 1.0、MTOM(消息传输优化机制)和DIME编码,而WCF使用XML 1.0、MTOM和二进制编码。两个平台都支持自定义编码方法。•web服务平台支持XML序列化,而在WCF中,服务平台支持运行时序列化。•WCF服务可以通过服务行为类进行多线程,web服务不能是多线程的。•WCF服务支持不同类型的绑定,如BasicHttpBinding、WSHttpBinding、WSDualHttpBinding,而web服务仅为此使用SOAP或XML。 |