1

サード パーティ ベンダーが ESB にメッセージをプッシュできるように、BizTalk スキーマを WCF サービスとしてサード パーティ ベンダーに公開しました。WCF サービスには、そのスキーマ タイプのメッセージを受け入れて返す単一の関数があります。問題は、応答がタイムリーに行われなかったり、ESB によってエラーが生成されるなどの別のメッセージが表示されたりした場合、サード パーティのアプリが失敗またはクラッシュすることです。

メッセージが正しい形式であり、返されたメッセージのデータがベンダーまたは私たち自身によって使用されていない限り、メッセージの内容は問題ではありません。ベンダーは、必要に応じてメッセージを返すために使用できる独自の WCF サービスも提供しています。既存の WCF サービスを変更するか、すぐに応答を返すだけでなく、さらに処理するためにメッセージを ESB に渡す新しいサービスを手動で作成したいと考えています。

svcutil を使用して WSDL からインターフェイスを作成しましたが、WCF サービスを手動で作成して BizTalk スキーマを公開する方法のコード例が見つかりません。すべての例は、ウィザードを指しています。

ウィザードが作成するコードは何ですか? 例はありますか?ありがとうございました。

2013年8月23日編集

そのため、ウィザードによって作成された wcf サービスを変更することはオプションではなく、新しいサービスを手動で作成することもできません。サービスを消費して応答を送信するオーケストレーションを作成してから、それを同じ受信ポートにバインドしようとしました。これは、旅程が機能する場合は機能しますが、エラーがある場合は実行されません。さらに、旅程が完了した後にのみ実行されますが、これは良くありません。早急な対応が必要です。

4

1 に答える 1

2

ウィザードによって作成された wcf サービスを変更することはできますが、通常はウィザードを使用して、コマンド ラインから以下を使用して再公開することをお勧めします。

BtsWcfServicePublishingWizard -WcfServiceDescription=C:\..\WcfServiceDescription.xml

WcfServiceDescription.xml は、C:\Inetpub\wwwroot\BizTalkWcfService\App_Data\Temp\WcfServiceDescription.xml のように、\App_Data\Temp\ で Web サービスを公開したフォルダーの下にあります。

この xml ファイルのコピーをソース管理に保持しておくことをお勧めします。Web サービスの下にあるものに対してウィザードを実行することは、フォルダー内のすべてを削除して再作成するため、お勧めできません。そのため、フォルダーを破損する可能性があるため、最初にコピーして、コピーに対して実行します。

于 2013-09-08T21:59:38.407 に答える