2012-02-27 112 views
7

自從最近幾個月以來,這個Asp.Net Web API似乎是來自Microsoft的高亮產品。它是WS * Service的替代方案嗎?它與WCF服務有何不同?我們從哪裏可以看到它是Web應用程序開發中的最佳選擇?Asp.Net Web API和WCF服務有什麼區別?

+0

[WCF vs ASP.NET Web API]的可能重複(http://stackoverflow.com/questions/9348639/wcf-vs-asp-net-web-api) – nawfal 2014-10-29 22:58:54

回答

9

ASP.NET Web API是構建通過HTTP公開的Web服務的框架。它非常適合(但不限於)構建RESTful Web服務。

這樣的Web服務是構建SOAP RPC/WS * Web服務的替代方案,因爲它們更簡單,重量更輕,客戶端與服務器之間的耦合更少。

傳統的「WCF服務」支持SOAP RPC而不是REST,並且這些服務往往很複雜並且在客戶端和服務器之間有緊密的耦合。廣泛的互操作性可能難以實現。但是,傳統的WCF服務可以通過各種協議進行通信 - TCP對於內部服務(同一個DMZ中的服務)特別有用。 (雖然WCF主要與SOAP RPC風格的服務相關聯,但WCF中至少有三次嘗試支持構建REST風格的Web服務,這些嘗試都被ASP.NET Web API取代。)

(http://support.microsoft.com/kb/

ASP.NET Web API最適合用於通過HTTP生成面向公共的RESTful Web服務 - 又名超媒體API。爲此,在開始使用ASP.NET Web API之前,充分了解REST體系結構風格非常重要。請參閱「REST實踐」,「RESTful Web服務手冊」和「使用HTML5和Node構建超媒體API」等書籍。

-2

Difference between ASP.net Web API and WCF API

Web服務是WCF的一部分。與Web服務相比,WCF提供更多的靈活性和可移植性來開發服務。儘管如此,我們仍然比Web服務更具優勢,下表提供了它們之間的詳細區別。

+2

您的鏈接和答案顯示網站之間的差異服務和WCF服務。但問題是關於web api和wcf服務 – 2012-03-20 08:46:58

+0

嗯..我的錯誤! – SmartestVEGA 2012-03-20 13:54:41

+0

@SmartestVEGA你可以刪除它並獲得一些代表 – nawfal 2014-10-29 22:58:36

相關問題