スキーマを WCF サービスとして発行するには、BizTalk WCF サービス発行ウィザードを使用します。
注
BizTalk WCF サービス発行ウィザードを実行する前に、BizTalk プロジェクトをビルドする必要があります。 BizTalk プロジェクトには、WCF サービスとして発行するスキーマを含める必要があります。
スキーマを WCF サービスとして発行するには
[ スタート] をクリックし、[ すべてのプログラム] をポイントし、[ Microsoft BizTalk Server 20xx] をポイントして、[ BizTalk WCF サービス発行ウィザード] をクリックします。
注
WCF アダプターを使用して BizTalk オーケストレーションとスキーマを WCF サービスとして作成および発行するには、BizTalk WCF サービス発行ウィザードを使用します。 オーケストレーションとスキーマを SOAP アダプターを使用して Web サービスとして発行するには、BizTalk Web サービス発行ウィザードを使用します。
[BizTalk WCF サービス発行ウィザードへようこそ] ページで、[次へ] をクリックします。
[ WCF サービスの種類] ページで、[ サービス エンドポイント ] オプションを選択して、BizTalk アセンブリ内の選択した BizTalk オーケストレーションに WCF サービスを発行します。
[ WCF サービスの種類 ] ページで、[ メタデータ エンドポイントを有効にする ] チェック ボックスをオンまたはオフにして、インターネット インフォメーション サービス (IIS) によってホストされている分離された WCF 受信場所が、HTTP/GET 要求を使用して取得するためにサービス メタデータを発行するかどうかを示します。
このチェック ボックスをオンにすると、<serviceMetadata> 要素の httpGetEnabled 属性が true に設定された Web.config ファイルが生成されます。 メタデータ インポート ツール (SvcUtil.exeなど) を使用して、開発環境でこのサービスを呼び出すために必要なクライアント コードを生成できます。 メタデータが発行されるアドレスは、エンドポイント アドレスと ?wsdl クエリ文字列です。
注
機密性の高い可能性があるサービス メタデータが意図せずに漏えいしないようにするには、運用環境でこの動作を無効にすることをお勧めします。 これを行うには、httpgetenabled を false に設定するか、MEX 仮想ディレクトリを削除します。
[ WCF サービスの種類] ページの [ アダプター名 (トランスポートの種類)] ドロップダウン リストで、WCF サービスを発行する分離された WCF アダプターを選択します。 次のいずれかのアダプターを選択できます。
WCF-BasicHttp。 WCF-BasicHttp アダプターは、ASMX ベースのサービスなどの WS-I Basic Profile 1.1 準拠 Web サービスと通信できます。
WCF-WSHttp。 WCF-WSHttp アダプターは、HTTP および HTTPS 経由で WS-* 標準を介してサービスと通信できます。
WCF-CustomIsolated。 WCF-CustomIsolated アダプターを使用すると、HTTP トランスポート経由で Windows Communication Foundation (WCF) の機能拡張機能を使用できます。
[ WCF サービスの種類 ] ページで、[ 次のアプリケーションで BizTalk の受信場所を作成 する] チェック ボックスをオンにして、[ アダプター名 ] ドロップダウン リストで選択した WCF アダプターに対して生成された各 .svc ファイルに対応する受信ポートと場所を作成します。 受信場所が既に存在する場合は、置き換えされません。 このオプションを選択した後、 BizTalk アプリケーション名 ドロップダウン リストで受信ポートと場所が生成されるアプリケーションを選択し、[ 次へ] をクリックします。
[ WCF サービスの作成 ] ページで、[ スキーマを WCF サービスとして発行] を選択し、[ 次へ] をクリックします。
[ WCF サービス ] ページで、発行する WCF サービスを定義します。 [Web サービスの説明] ダイアログ ボックスのツリーを使用して、WCF サービスが発行する Web サービスの説明ノードを追加、削除、名前変更、および編集します。 [ 情報 ] ダイアログ ボックスには、選択したノードに関する情報が表示され、現在のノードまたはサブノードのエラーが表示されます。
ツリーのルート ノード (Web サービスの説明) では、発行する WCF サービスについて説明します。 仮想ディレクトリ名は、ルート ノードを既定の名前として使用します。 [Web サービスの説明の名前の変更] を選択して、発行する WCF サービスの Web サービスの説明名を変更できます。
既定のサービス ノード Service1 の Web メソッド ノード Operation1 は、[ Web サービスの説明 ] ダイアログ ボックスに既定で表示され、要求/応答の受信場所に使用できます。 このサービスの説明に対して一方向 WCF 受信場所を発行する場合は、既定の Web メソッド ノードを右クリックし、[ Web メソッドの削除] をクリックし、次のように一方向 Web メソッドを作成します。既定のサービス ノードを右クリックし、[ Web メソッドの追加] をポイントして、[ One-Way] をクリックします。
新しい WCF サービスを追加するには、Web サービスの説明名を右クリックし、[ Web サービスの追加] をクリックします。 これにより、WCF 操作なしで新しい WCF サービスが作成されます。 WCF サービスの名前を変更するには、WCF サービス ノードを右クリックし、[ Web サービスの名前の変更] をクリックし、Enter キーを押して新しい名前を受け入れます。
新しい WCF 操作を追加するには、WCF サービス ノードを右クリックし、[ Web メソッドの追加] をポイントし、[ 一方向 ] (要求 WCF 操作の場合) または [ 要求応答 ] (要求-応答 WCF 操作の場合) をクリックします。
要求スキーマと応答スキーマの種類を設定するには、[ 要求 ] または [ 応答 ] ノードを右クリックし、[ スキーマの種類の選択] をクリックします。 [ 要求メッセージの種類 ] ダイアログ ボックスで、 BizTalk アセンブリ ファイルテキスト ボックスにドキュメント スキーマを含むアセンブリの名前を入力するか、[ 参照 ] をクリックしてアセンブリを検索します。 [使用可能なスキーマの種類] リスト ビューには、スキーマの各ルート要素が表示されます。 要求または応答スキーマの種類として追加するルート ノードを選択します。
注
BizTalk アセンブリ ファイルをグローバル アセンブリ キャッシュ (GAC) にインストールした場合は、[ 要求メッセージの種類 ] ダイアログ ボックスで選択するアセンブリで GAC 内のアセンブリが更新されていることを確認します。 GAC に同じ完全修飾名がある場合、BizTalk WCF サービス発行ウィザードでは、選択したアセンブリ ファイルではなく GAC 内のアセンブリ ファイルが使用されます。
生成されたコードに影響を与えずに、 要求 ノードと 応答 ノードの名前を変更できます。 スキーマを定義したら、パーツ要素の名前を変更して、WCF 操作パラメーター名を変更できます。 変更を確認するには、公開する WCF サービスのサービス メタデータを表示します。
注
Web サービス記述ノードの名前を変更するときにスペースを使用することはできません。
[ 次へ ] をクリックしてウィザードを続行します。
[WCF サービスのプロパティ] ページの [WCF サービスのターゲット名空間] テキスト ボックスに、WCF サービスのターゲット名前空間を入力し、[次へ] をクリックします。
[ WCF サービスの場所 ] ページの [ 場所 ] テキスト ボックスに、WCF サービスが生成される Web ディレクトリ名を入力します。 既定の場所 (
http://localhost/<Web service description name>
) をそのまま使用するか、[場所 ] テキスト ボックス に WCF サービスの場所を入力するか、[ 参照 ] をクリックして Web ディレクトリを選択します。 次のいずれかのオプションを選択します。既存のプロジェクトを上書きします。 このオプションは、Web ディレクトリが既に存在する場合にのみ使用できます。 このオプションを選択した場合にのみ、同じ場所に発行できます。 それ以外の場合は、別のプロジェクトの場所を入力する必要があります。
WCF サービスへの匿名アクセスを許可します。 このオプションは、作成された仮想ディレクトリに匿名アクセスを追加します。 既定では、仮想ディレクトリは親仮想ディレクトリまたは Web サイト (最上位の仮想ディレクトリの場合) からアクセス特権を継承します。
このページが完了したら、[ 次へ] をクリックします。
注
プロジェクトの場所は、別のサーバーに存在できます。 WCF サービスを別のサーバーに発行するには、プロジェクト名を
http://<servername>/<WCF service ___location>
として入力します。注
プロジェクトの場所は、既定以外の Web サイトに存在できます。 既定以外の Web サイトに発行する場合は、URL に Web サイトのポート番号を含めます。 たとえば、
http://<servername>:8080/<WCF service ___location>
のようにします。注
ウィザードを使用して受信場所を作成する場合、ウィザードは既定値を使用して受信場所を作成します。 受信パイプラインの既定値は 、Microsoft.BizTalk.DefaultPipelines.PassThruReceive パイプラインです 。 発行された WCF サービスを介して受信したメッセージに特別なパイプライン処理 (検証、関連付け/プロパティの昇格、受信/送信マップなど) が必要な場合は、受信パイプラインを Microsoft.BizTalk.DefaultPipelines.XMLReceive に設定するか、BizTalk 管理コンソールを使用してカスタム パイプラインに設定する必要があります。
[WCF サービスの概要] ページで、WCF サービスの設定を確認します。
[ 作成 ] をクリックして WCF サービスを作成します。
[ 完了] をクリックして、BizTalk WCF サービス発行ウィザードを完了します。
BizTalk WCF サービス発行ウィザードを使用して WCF サービスを発行した後、それらを適切に構成する必要があります。 分離 WCF 受信アダプターを構成する方法については、「 BizTalk WCF サービス発行ウィザードを使用して発行された WCF サービスを構成する方法」を参照してください。
こちらもご覧ください
BizTalk WCF サービス発行ウィザードを使用して発行された WCF サービスを構成する方法
チュートリアル: WCF-BasicHttp アダプターを使用した WCF サービスの発行
BizTalk WCF サービス発行ウィザードを使用してオーケストレーションを WCF サービスとして発行する方法