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。 |