定義用戶端端點行為,用於在不同綁定類型與訊息版本間協調訊息。
<組態>
<system.service模型>
<行為>
<端點行為>
<態度>
<肥皂處理>
語法
<soapProcessing processMessages="true|false" />
屬性和元素
下列章節說明屬性、子元素和父元素。
Attributes
| Attribute | Description |
|---|---|
processMessages |
一個布林值,用來指定訊息是否應該在 SOAP 訊息版本之間編組。 |
子專案
None
父元素
| 元素 | Description |
|---|---|
| <態度> | 指定端點行為。 |
備註
SOAP 處理是指訊息在不同版本間轉換訊息的過程。
Windows 通訊基礎(WCF)路由服務可以將訊息從一個協定轉換到另一個協定。 若接收與發出訊息版本不同,則會建立正確版本的新訊息。 處理訊息 MessageVersion 間的訊息是透過建立一個新的 WCF 訊息,包含來自接收 WCF 訊息的主體部分及相關標頭來完成。 專門用於定址或路由器層級理解的標頭,在建構新 WCF 訊息時不會使用,因為這些標頭要麼是不同版本(在尋址標頭的情況下),要麼已作為客戶端與路由器間通訊的一部分被處理。
標頭是否被放入出站訊息,取決於該訊息通過進站通道層時是否標記為已理解。 不被理解的標頭(如自訂標頭)不會被移除,因此會透過路由服務複製到外發訊息。 訊息的正文會被複製到外發訊息中。 訊息隨後會被發送到外站通道,屆時該通訊協定/傳輸特有的所有標頭及其他包絡資料都會被建立並加入。
當 SOAP 處理行為被指定時,這些處理步驟就發生了。 這個 <soapProcessingExtension> 行為是一種端點行為,當路由服務啟動時會套用到所有用戶端(出站端點)。預設情況下,<路由>行為會建立並附加一個新的 <soapProcessingExtension> 行為,為processMessages每個用戶端端點設定為 。true 如果你有路由服務無法理解的協定,或想覆蓋預設的處理行為,你可以停用整個路由服務的 SOAP 處理,或僅限特定端點。 要在所有端點上停用整個路由服務的 SOAP 處理,請將>屬性設為 false。 要關閉特定端點的 SOAP 處理,請使用此行為並將其屬性processMessages設false為 ,然後將此行為附加到你不希望預設處理程式碼執行的端點。 當路由<>行為建立路由服務時,會跳過重新套用端點行為,因為已有端點行為存在。