WCF教學

WCF是Windows通信基礎(Windows Communication Foundation)的縮寫。 WCF的基本特徵是互操作性。這是微軟用於構建面向服務的應用程序的最新技術之一。根據基於消息的通信的概念中,一個HTTP請求可以被均勻地表示,WCF是一個統一的API而不管不同的傳輸機制。

WCF在2006年第一次作爲.NET框架以及Windows Vista的一部分發布,然後得到了多次更新。 WCF4.5是當前廣泛使用的最新版本。 WCF應用程序由三部分組成 - WCF服務,WCF服務主機和WCF服務客戶端。 WCF平臺有時也被稱爲服務模型。

WCF的基本概念

消息 - 這是由幾部分組成身外的通信單元。消息實例被作爲接收的所有類型的客戶端和服務之間的通信。

端點 - 它定義了一個消息將被髮送或接收的地址。它還指定的通信機制來描述如何將郵件將被界定的組消息一起發送。一個端點的結構包括以下幾個部分組成。

  • 地址 - 該指定要接收的消息的準確位置和被指定爲一個統一資源標識符(URI)。它表現爲方式://域名[:端口]/[路徑]。這可通過具有上述的地址一目瞭然很好理解。

    net.tcp://localhost:9000/ServiceA

    在這裏,net.tcp是TCP協議方案。該域名是本地主機,可一機多用的名稱或網絡域和路徑是ServiceA。

  • 綁定 - 它定義了一個端點通信,幷包括一些使通信基礎設施的結合元件的方式。例如,結合狀態用於運輸如TCP,HTTP等,消息編碼和相關的安全性以及可靠性的協議格式的協議。

  • 合約 - 這是一個範圍的操作來指定該消息的端點將通信。它通常是一個接口名稱

主機 - 主機相對於WCF通常意味着WCF服務的主機可以通過許多可用的選項,如自託管完成,IIS託管和主持。

元數據 - 這是WCF的一個顯著的概念,因爲它方便了客戶端應用程序和一個WCF服務之間的輕鬆互動。通常,元數據的WCF服務被啓用時,自動生成的,這是由服務和它的端點的檢查完成。

WCF客戶端 - 被揭露的服務操作的方法形式被稱爲WCF客戶端創建客戶端應用程序。這可以由任何應用程序,即使是在一個沒有服務的主機託管。

通道 - 通道是通過該客戶端可以與服務進行通信的介質。許多不同類型的通道可以得到疊層和被稱爲信道棧。

SOAP - 雖然名爲「簡單對象訪問協議」,SOAP不是一個傳輸協議,取而代之的是一個XML文檔,其包括頭部和主體部。

WCF的優點

1.它是可互操作相對於其他的服務。與此形成鮮明對比.NET遠程處理,客戶端和服務必須有.NET。

2. WCF服務的提供增強的可靠性和安全性相比,ASMX(活動服務器的方法)web服務。

3.實現安全模型,並結合不斷變化的WCF不需要編碼的重大變化。只需很少的配置變更,必須符合的約束。

4. WCF具有內置在記錄機制,而在其他技術中,必須做必要的編碼。

5. WCF集成AJAX和支持JSON(JavaScript對象表示法)。

6.提供可擴展性可支持出新的Web服務標準。

7.具有極其強大的默認安全機制。