オーケストレーションには複数の受信ポートを含めることができます。 BizTalk Web サービス発行ウィザードを使用して、Web サービスとして発行する受信ポートを選択します。 ウィザードでは、受信ポートごとに 1 つの Web サービス (.asmx ファイル) が作成されます。 ウィザードでは、同じ受信ポートの種類 (一方向または要求/応答) である場合、すべての受信ポートに対して 1 つの Web サービスを作成することもできます。 操作は関数呼び出しになります。 受信ポート内の各操作は、Web メソッドになります。 要求操作は入力パラメーターになります。 応答の操作はリターン型になります。
要求操作と応答操作が同じ Web メッセージ型の場合、入力パラメーターは ref になり、戻り値の型は void になります。 ASP.NET Web クライアントは、同じ型の in パラメーターと out パラメーターを組み合わせることにより、Web メソッドシグネチャを変更できます。 たとえば、ASP.NET Web クライアントは、BizTalk Web メソッドを 文字列 myService(文字列部分) から void myService(ref 文字列部分)に変更できます。
操作メッセージの種類によって、Web メソッドシグネチャが定義されます。 各メッセージの種類の部分は、Web メソッドのパラメーターです。
メッセージ型のパーツ名とターゲット名前空間
XmlRootAttribute が指定されたドキュメント スキーマとユーザー定義クラスは、ターゲット名前空間が定義されているメッセージ型の部分です。 EDI スキーマ、 XmlRootAttribute が 指定されていないユーザー定義クラス、 System.String などの組み込み型は、定義されたターゲット名前空間のないメッセージ型パーツです。
メッセージ・タイプ・パーツ名に | 使用されるパラメーター名 |
---|---|
定義されたターゲット名前空間 | ルート要素名 |
ターゲット名前空間が定義されていません | メッセージ種類の部分名 |
注
応答メッセージにマルチパート メッセージの種類を使用する場合、BizTalk Web サービス発行ウィザードでは、戻り値に最初のメッセージ 部分が使用され、残りのメッセージ部分が出力パラメーターとして使用されます。
複数の操作を含むオーケストレーション
オーケストレーションに複数の操作がある場合は、複数の受信ポートではなく、1 つの受信ポートを持つオーケストレーションを設計する必要があります。 この設計により、BizTalk Web サービス発行ウィザードで複数の Web サービス (.asmx) ファイルが作成されるのを防ぎ、すべての操作が同じ呼び出しパターン (すべての一方向操作またはすべての要求応答操作) を持つ場合にのみ機能します。 1 つの受信ポートに一方向操作と要求/応答操作の両方を含めることはできません。
注
BizTalk Web サービス発行ウィザードには、パブリック受信ポートが表示されます。 パブリック受信ポートは、パブリック型修飾子を持つポートの種類です。 パブリック ポートのみを Web サービスとして発行できます。 既定のポートの種類は内部です。
注
受信ポートが一方向として定義されている場合、Web メソッドの応答の種類は void であり、情報は Web クライアントに返されません。 SOAP アダプターまたはオーケストレーションによってスローされた例外は、Web クライアントに返されません。
公開オーケストレーションのWebサービス命名規則
BizTalk Web サービス発行ウィザードでは、オーケストレーション名前空間に基づいて Web サービス (.asmx) ファイル名が生成され、その後にアンダースコア ()、型名、アンダースコア (\)、受信ポートの名前が続きます。 アンダースコア (_) は、ピリオドを含む部分を置き換えます。 Web サービスの名前には、常にポート名が追加されます。
次の表に、BizTalk Web サービス発行ウィザードで Web サービス名を生成する方法を示します。
Webポートを使用したオーケストレーション | 生成された Web サービス名 |
---|---|
1 つの Web ポートを持つ 1 つのオーケストレーション | orchestration1_port1.asmx |
1つのオーケストレーションと2つのWebポート | orchestration1_port1.asmx と orchestration1_port2.asmx |
それぞれ 1 つの Web ポートを持つ 2 つのオーケストレーション | orchestration1_port1.asmx と orchestration2_port2.asmx |
こちらもご覧ください
オーケストレーションを Web サービスとして発行する
BizTalk Web サービス発行ウィザードを使用してオーケストレーションを Web サービスとして発行する方法