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.具有極其強大的默認安全機製。