Send 活動設計工具
Send 活動設計工具可用來建立和設定 Send 活動。
Send 活動
Send 活動會用來傳送訊息至服務。 ReceiveReply 活動可以繫結程序至 Send 活動,而後者會接收用戶端上做為要求/回應訊息交換模式的一部分之訊息。
使用 Send 活動設計工具
在 [工具箱] 的 [傳訊] 類別中,存取 Send 活動設計工具。 Send 活動設計工具可以從 [工具箱] 拖曳出來,並置放到通常用來放置活動的 [工作流程設計工具] 介面上。 這會建立一個 Send 活動,具有 Send 的預設 DisplayName。 DisplayName 可以在 Send 活動設計工具的標頭中編輯,或是在屬性方格的 DisplayName 方塊中編輯。
若要建立 ReceiveReply 活動並繫結至選取的 Send 活動,請以滑鼠右鍵按一下 Send 活動設計工具,然後按一下操作功能表中的 [建立 ReceiveReply] 項目,Send 設計工具下方就會出現 [ReceiveReplyForSend] 設計工具。 ReceiveReply 活動會接收用戶端上做為要求/回應訊息交換模式的一部分之訊息。 這可以使用 [ReceiveReplyForSend] 設計工具加以設定。
另外,也可以使用 [工具箱] 中 [傳訊] 類別的 [SendAndReceiveReply] 範本設計工具,建立一對預先設定的 Send 與 ReceiveReply 活動。 如需使用 SendAndReceiveReply 和 ReceiveReplyForSend 範本的詳細資訊,請參閱 sendAndReceiveReply 主題。
Send 活動屬性
下表顯示 Send 屬性,並且描述屬性在設計工具中的使用方式。 這些屬性可以在 [屬性] 方格中或在 [工作流程設計工具] 介面上編輯。
屬性名稱 | 必要 | 使用方式 |
---|---|---|
DisplayName | False | Send 活動的易記名稱。 預設為 Send。 雖然 DisplayName 並非絕對必要,但建議您盡量使用。 |
OperationName | True | 這個 Send 活動呼叫之服務作業的名稱。 這個屬性用於建構 Action 屬性的預設值 (如果尚未明確設定 Action 屬性)。 |
ServiceContractName | True | 要呼叫之服務所實作的服務合約名稱。 |
Content | False | 指定要接收的訊息或參數內容。 這可以是 ReceiveMessageContent 活動或 ReceiveParametersContent 活動。 若要編輯此屬性,請選取屬性方格中 [內容] 欄位旁邊的省略符號按鈕,或按一下 [Receive] 活動設計工具介面上 [內容] 標籤旁邊的 [定義...] 按鈕。 兩者都顯示 [內容定義] 對話方塊。 如需有關如何使用這個方塊的詳細資訊,請參閱內容定義對話方塊主題。 |
CorrelatesWith | False | 指定用來路由訊息到適當工作流程執行個體的 CorrelationHandle。 按一下屬性方格中 CorrelatesWith 屬性旁邊的省略符號按鈕,以開啟 [運算式編輯器] 對話方塊。 如需如何使用此對話方塊的詳細資訊,請參閱 如何:使用運算式編輯器 主題。 |
CorrelationInitializers | False | 指定 CorrelationInitializer 物件的集合,這些物件會初始化多個 CorrelationHandle 物件,用來設定工作流程內的這個 Send 活動。 按一下屬性方格中 CorrelationInitializers 屬性旁邊的省略符號按鈕,以開啟 [新增相互關聯初始設定式] 對話方塊。 如需使用這個方塊的詳細資訊,請參閱新增 CorrelationInitializers 對話方塊主題。 |
KnownTypes | False | 這個 Send 活動要呼叫之服務作業之已知型別的集合。 這個屬性應該搭配 SerializerOption 屬性 (設定為 DataContractSerializer) 使用。 如果使用 XmlSerializer,則會忽略此項。 選取屬性方格中 [KnownTypes] 欄位旁邊的省略符號按鈕,以顯示 [型別集合編輯器] 對話,可用來加入相關型別。 選取屬性方格中 [KnownTypes] 欄位旁邊的省略符號按鈕,以顯示 [型別集合編輯器] 對話方塊,可用來加入相關型別。 如需使用這個方塊的詳細資訊,請參閱型別集合編輯器對話方塊主題。 |
ProtectionLevel | True | 指定訊息的 ProtectionLevel。 1. ProtectionLevel 表示僅限驗證。 2. ProtectionLevel 表示簽署資料以協助確保傳輸之資料的完整性。 3. ProtectionLevel 表示加密並簽署資料以協助確保傳輸之資料的機密性和完整性。 |
SerializerOption | True | Send 活動要呼叫之服務作業所要使用的序列化程式。 預設值是 DataContractSerializer,這會使用提供的資料合約,將型別的執行個體序列化及還原序列化,成為 XML 資料流或文件。 |
Action | False | 指定訊息的動作標頭。 如果沒有明確設定,其值會預設為:https://tempuri.org/{service contract namespace}/{service contract name}/{operation name} 。 如果在 Send 活動上指定,則接收訊息的 Receive 活動必須與要正確傳遞的訊息具有相同的值。 |
TokenImpersonationLevel | 訊息的接收者允許的 TokenImpersonationLevel。 這會定義安全性模擬等級,用來控管伺服器處理序可代表用戶端處理序的程度。TokenImpersonationLevel 表示未指派模擬層級。 TokenImpersonationLevel 表示伺服器處理序無法取得用戶端的識別資訊,也無法模擬用戶端。 TokenImpersonationLevel 表示伺服器處理序可以取得關於用戶端的資訊,例如安全識別項和權限,但無法模擬用戶端。 對於匯出其自己的物件之伺服器 (例如匯出資料表和檢視表的資料庫產品) 而言,這將會很有用。 藉由使用所擷取的用戶端安全性資訊,伺服器便可做出存取驗證決策,而不用具備使用其他服務的能力,這些服務使用用戶端的安全性內容。 TokenImpersonationLevel 表示伺服器處理序可在其本機系統上模擬用戶端的安全性內容。 伺服器無法在遠端系統上模擬用戶端。 TokenImpersonationLevel 表示伺服器處理序可在遠端系統上模擬用戶端的安全性內容。 | |
Endpoint | Endpoint 活動傳送訊息的目標 Send。 如果已設定這個屬性,則 EndpointConfigurationName 屬性應該是 null。 | |
EndpointAddress | 訊息傳送至的 EndpointAddress。 | |
EndpointConfigurationName | 端點組態的名稱。 這個屬性會在您設定組態檔中的端點時設定。 請將這個屬性的名稱設定為組態檔中 <endpoint> 項目所提供的名稱。 如果已設定這個屬性,則 Endpoint 屬性應該是 null。 |