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.具有極其強大的預設安全機制。