2011-01-22 60 views
3

我知道web服務只能在IIS中託管,但wcf可以託管在IIS中,也可以在win服務中使用。但實際的主要權力在哪裏,開發人員選擇wcf而不是web服務。請詳細解釋。謝謝web服務和wcf的主要區別是什麼?

+2

即使是第一頁的文檔也懶得讀? – TomTom 2011-01-22 18:45:13

+1

@TomTom:指向這個網站上的一個騙局。否則,這是一個有效的問題。 – 2011-01-22 19:05:59

回答

2

Windows Communication Foundation(WCF)具有ASP.NET兼容模式選項,以使WCF應用程序能夠像ASP.NET Web服務一樣被編程和配置,並模仿它們的行爲。

更好的性能,Web服務使用XmlSerializer,WCF使用DataContractSerializer,與XmlSerializer相比,它的性能更好。

換句話說,您可以使用WCF託管普通的舊Web服務。和你有更多的像使用命名管道/ TCP通信的可能性/ MSMQ等

2

WCF提供:

  • 統一的編程模型
  • 新功能
  • 更多的協議對於上了年紀
  • 支持ASMX/XML webservices

在.NET中,使用WCF,除非您有非常具體的遺留要求。

0

基本上WCF是建立分佈式應用程序更有效的方式。與asmx相比,http只是SOAP,WCF提供了許多其他通信提供者(如TCP/IP)。 WCF允許您通過配置來配置其行爲(如何處理數據 - 異步與同步,任何客戶端請求只有一個wcf服務實例等)。所以wcf,簡而言之,.net 2.0的遠程處理類和asmx在一起的成功。據說,你可以在自己的進程中託管你的WCF以外的IIS - Win Service,Win Form或其他任何exe文件。你只需要實現服務主機。

相關問題