自訂繫結
當系統提供的其中一個繫結不符合服務的需求時,您可以使用 CustomBinding 類別。所有繫結都是根據已排序的繫結項目組所建構。自訂的繫結可以從系統提供的繫結項目建置,或是可以包含使用者定義的自訂繫結項目。例如,您可以使用自訂繫結項目,以便在服務端點使用新的傳輸或編碼器。如需實用範例,請參閱Custom Binding Samples。如需詳細資訊,請參閱 <customBinding>。
建構自訂繫結
在建構自訂繫結時,會使用依特定順序堆疊的繫結項目集合中的 CustomBinding 建構函式:
- 在最上方為允許流動交易的選擇性 TransactionFlowBindingElement 類別。
- 接下來是選擇性 ReliableSessionBindingElement 類別,它會提供 WS-ReliableMessaging 規格中所定義的工作階段和排序機制。工作階段可以跨 SOAP 和傳輸媒介。
- 下一個是選擇性的 SecurityBindingElement 類別,它會提供如授權、驗證、保護和機密性等安全性功能。
- 再來是必要的訊息編碼繫結項目。您可以使用自己的訊息編碼器,或是三個訊息編碼繫結的其中一個:
最下方是必要的傳輸項目。您可以使用自己的傳輸,或是下列其中一個 Windows Communication Foundation (WCF) 提供的傳輸繫結項目:
- TcpTransportBindingElement
- HttpTransportBindingElement
- HttpsTransportBindingElement
- NamedPipeTransportBindingElement
- PeerTransportBindingElement
- MsmqTransportBindingElement
- MsmqIntegrationBindingElement
- ConnectionOrientedTransportBindingElement
下表摘要出每一層的選項。
層 | 選項 | 必要項 |
---|---|---|
交易 |
TransactionFlowBindingElement |
否 |
可靠性 |
ReliableSessionBindingElement |
否 |
安全性 |
SecurityBindingElement |
否 |
編碼方式 |
文字、程式庫、訊息傳輸最佳化機制 (MTOM)、自訂 |
是 |
傳輸 |
TCP、HTTP、HTTPS、具名管道 (也稱為 IPC)、對等式 (P2P)、訊息佇列 (也稱為 MSMQ)、自訂 |
是 |
此外,您也可以定義自己的繫結項目,並將其插入上述任何定義層之間。