Send アクティビティ デザイナーは、Send アクティビティを作成および構成するために使用します。
Send アクティビティ
メッセージをサービスに送信するには、Send アクティビティを使用します。ReceiveReply アクティビティは、クライアントでの要求/応答メッセージ交換パターンの一部としてメッセージを受信する Send アクティビティにバインドできます。
Send アクティビティ デザイナーの使用
Send アクティビティ デザイナーは、[ツールボックス] の [メッセージング] カテゴリにあります。[ツールボックス] にアクセスするには、ワークフロー デザイナーの [ツールボックス] タブをクリックします (または、[表示] メニューの [ツール バー] をクリックするか、Ctrl キーと Alt キーを押しながら X キーを押します)。
Send アクティビティ デザイナーは、[ツールボックス] からドラッグして、アクティビティを通常配置しているワークフロー デザイナーの任意の画面にドロップできます。この操作により、Sent という既定の DisplayName を持つ Send アクティビティが作成されます。DisplayName は、Send アクティビティ デザイナーのヘッダー、またはプロパティ グリッドの [DisplayName] ボックスで編集できます。
ReceiveReply アクティビティを作成し、選択した Send アクティビティにバインドするには、Send アクティビティ デザイナーを右クリックし、コンテキスト メニューの [ReceiveReply の作成] をクリックします。これで、Send デザイナーの下に ReceiveReplyForSend デザイナーが表示されます。ReceiveReply アクティビティは、クライアントでの要求/応答メッセージ交換パターンの一部としてメッセージを受信するアクティビティであり、ReceiveReplyForSend デザイナーで構成できます。
別の方法として、[ツールボックス] の [メッセージング] カテゴリにある SendAndReceiveReply テンプレート デザイナーを使用して、定義済みの Send アクティビティと ReceiveReply アクティビティのペアを作成することもできます。SendAndReceiveReply テンプレートと ReceiveReplyForSend テンプレートの使用詳細情報、「SendAndReceiveReply テンプレート デザイナー」を参照してください。
Sent アクティビティのプロパティ
次の表に、Send のプロパティと、デザイナーでのその使用方法を示します。これらのプロパティは、プロパティ グリッドまたはワークフロー デザイナー画面で編集できます。
プロパティ名 | 必須 | 使用法 |
---|---|---|
DisplayName |
省略可 |
Send アクティビティの表示名。既定値は Sent です。DisplayName は必須ではありませんが、使用することをお勧めします。 |
必須 |
この Send アクティビティによって呼び出されるサービス操作の名前。このプロパティは、Action プロパティが明示的に設定されていない場合に、Action プロパティの既定値を構成するために使用します。 |
|
必須 |
呼び出されるサービスが実装するサービス コントラクトの名前。 |
|
省略可 |
受信するメッセージまたはパラメーターの内容を指定します。ReceiveMessageContent アクティビティまたは ReceiveParametersContent アクティビティを指定できます。このプロパティを編集するには、プロパティ グリッドで [Content] フィールドの横にある省略記号ボタンをクリックするか、Receive アクティビティ デザイナー画面で "コンテンツ" というラベルの横にある [定義] ボタンをクリックします。どちらの手順でも、[コンテンツ定義] ダイアログ ボックスが表示されます。このダイアログ ボックスの使用方法詳細情報、「[コンテンツ定義] ダイアログ ボックス」を参照してください。 |
|
省略可 |
適切なワークフロー インスタンスにメッセージをルーティングするために使用される CorrelationHandle を指定します。 プロパティ グリッドで CorrelatesWith プロパティの横にある省略記号ボタンをクリックして、[式エディター] ダイアログ ボックスを開きます。このダイアログ ボックスの使用詳細情報、「式エディターを使用する方法」を参照してください。 |
|
省略可 |
ワークフロー内のこの Send アクティビティを構成する複数の CorrelationHandle オブジェクトを初期化する CorrelationInitializer オブジェクトのコレクションを指定します。プロパティ グリッドで CorrelationInitializers プロパティの横にある省略記号ボタンをクリックして、[関連付け初期化子の追加] ダイアログ ボックスを開きます。このダイアログ ボックスの使用詳細情報、「[関連付け初期化子の追加] ダイアログ ボックス」を参照してください。 |
|
省略可 |
この Send アクティビティによって呼び出されるサービス操作の既知の型のコレクション。このプロパティは、DataContractSerializer に設定された SerializerOption プロパティと共に使用する必要があります。XmlSerializer が使用されている場合は無視されます。 プロパティ グリッドで [KnownTypes] フィールドの横にある省略記号ボタンをクリックして、[型コレクション エディター] ダイアログを開きます。このダイアログで、該当する型を追加できます。 プロパティ グリッドで [KnownTypes] フィールドの横にある省略記号ボタンをクリックして、[型コレクション エディター] ダイアログ ボックスを開きます。このダイアログ ボックスで、該当する型を追加できます。このダイアログ ボックスの使用詳細情報、「[型コレクション エディター] ダイアログ ボックス」を参照してください。 |
|
必須 |
メッセージの ProtectionLevel を指定します。
|
|
必須 |
Send アクティビティによって呼び出されるサービス操作に使用するシリアライザー。既定値は DataContractSerializer です。このシリアライザーは、ある型のインスタンスを、提供されたデータ コントラクトを使用する XML ストリームまたはドキュメントへとシリアル化または逆シリアル化します。 |
|
省略可 |
メッセージのアクション ヘッダーを指定します。これを明示的に設定しない場合は、既定値の |
|
メッセージの受信側に許可される TokenImpersonationLevel。サーバー プロセスがクライアント プロセスに代わって動作できる度合いを指定するセキュリティ偽装レベルを定義します。None は、偽装レベルが割り当てられていないことを示します。Anonymous は、サーバー プロセスがクライアントの識別情報を取得できず、クライアントを偽装できないことを示します。Identification は、サーバー プロセスが、セキュリティ識別子や特権などのクライアント情報は取得できるが、クライアントを偽装できないことを示します。これは、テーブルとビューをエクスポートするデータベース製品など、独自のオブジェクトをエクスポートするサーバーで役立ちます。取得したクライアントのセキュリティ情報を使用すると、サーバーでは、クライアントのセキュリティ コンテキストを使用している他のサービスを使用できない場合でも、アクセス検証に関する決定を下すことができます。Impersonation は、サーバー プロセスがローカル システム上にあるクライアントのセキュリティ コンテキストを偽装できることを示します。サーバーは、リモート システム上にあるクライアントを偽装できません。Delegation は、サーバー プロセスが、リモート システム上にあるクライアントのセキュリティ コンテキストを偽装できることを示します。 |
||
Send アクティビティによるメッセージの送信先の Endpoint。このプロパティを設定した場合は、EndpointConfigurationName プロパティが null である必要があります。 |
||
メッセージの送信先となる EndpointAddress。 |
||
EndpointConfigurationName |
エンドポイント構成の名前。このプロパティは、エンドポイントを構成ファイルで構成している場合に設定します。このプロパティは、構成ファイルの <endpoint> 要素で指定されている名前に設定する必要があります。このプロパティを設定した場合は、Endpoint プロパティが null である必要があります。 |
参照
概念
InitializeCorrelation アクティビティ デザイナー
CorrelationScope アクティビティ デザイナー
ReceiveAndSendReply テンプレート デザイナー
Receive アクティビティ デザイナー
SendAndReceiveReply テンプレート デザイナー
TransactedReceiveScope アクティビティ デザイナー