端點:位址、繫結和合約
所有與 Windows Communication Foundation (WCF) 服務的通訊都是透過服務的「端點」(Endpoint) 發生的。端點針對 WCF 服務所提供的功能提供了用戶端存取。
端點包含四項屬性:
指出可在何處找到端點的位址。
指定用戶端可以如何與端點通訊的繫結。
識別可用作業的合約。
指定本機端點實作細節的行為集。
本主題討論這個端點結構並說明如何以 WCF 物件模型來加以表示。
端點結構
每個端點都包含下列項目:
位址:位址會唯一識別端點並告訴潛在取用者服務的位置。它會透過 WCF 物件模型中的 EndpointAddress 類別來表示。EndpointAddress 類別包含:
如需詳細資訊,請參閱 指定端點位址.
繫結:繫結會指定與端點的通訊方式。包括:
要使用的傳輸通訊協定 (例如,TCP 或 HTTP)。
訊息使用的編碼 (例如,文字或二進位)。
必要的安全性需求 (例如,SSL 或 SOAP 訊息安全性)。
如需詳細資訊,請參閱 Windows Communication Foundation 繫結概觀. 繫結會透過 WCF 物件模型中的抽象基底類別 Binding 來表示。在大部分情況中,使用者可以使用下列其中一種系統提供的繫結。如需詳細資訊,請參閱系統提供的繫結。
合約:合約會概略說明端點公開哪些功能給用戶端。合約會指定:
用戶端可以呼叫的作業。
訊息格式。
呼叫作業所需的輸入參數或資料型別。
用戶端可以期待收到的處理或回應訊息型別。
如需定義合約的詳細資訊,請參閱設計服務合約。
行為:您可以使用端點行為來自訂服務端點的本機行為。端點行為會藉由參與建置 WCF Runtime 的處理序來達到這個目的。ListenUri 屬性是一個端點行為範例,它可讓您指定不同於 SOAP 或 Web 服務描述語言 (WSDL) 位址的接聽位址。如需詳細資訊,請參閱 ClientViaBehavior.
定義端點
您可以透過命令式程式碼或是宣告式組態來指定服務端點。如需詳細資訊,請參閱 HOW TO:在組態中建立服務端點和 HOW TO:在程式碼中建立服務端點。
本章節內容
本章節說明繫結、端點與位址的用途;說明如何設定繫結與端點;並示範如何使用 ClientVia 行為和 ListenUri 屬性。
- 端點位址
說明 WCF 如何處理端點。
- Windows Communcation Foundation 繫結
說明如何使用繫結來指定必要的傳輸、編碼與通訊協定詳細資料,以供用戶端與服務彼此通訊。
- 合約
說明合約如何定義服務方法。
- HOW TO:在組態中建立服務端點
說明如何透過組態建立服務端點。
- HOW TO:在程式碼中建立服務端點
說明如何透過程式碼建立服務端點。
- HOW TO:使用 Svcutil.exe 來驗證已編譯服務程式碼
說明在不裝載服務的前提下,如何使用 ServiceModel 中繼資料公用程式工具 (Svcutil.exe) 來偵測服務實作與組態中的錯誤。