0

「生成されたアイテムの追加」でbiztalkのWCFサービスを利用しました。整数パラメーターを取る WCF のメソッドがあります。オーケストレーションでは、そのメソッドにデフォルト値を渡すか、入力値をハードコーディングしたいと考えています。どうすればこれを達成できますか。この質問をグーグルで検索しましたが、適切な結果が得られませんでした。

私が行ったことは、値を割り当てる整数変数を宣言し、その変数を整数型のメッセージに割り当てたことです。

このメッセージを WebService Request タイプのメッセージに割り当てるにはどうすればよいですか? または、整数型のメッセージを WebService Request 型のメッセージに変換するにはどうすればよいですか?

4

2 に答える 2

0

これを行う方法はたくさんあります:

  1. リクエストを別のメッセージからマッピングしている場合は、マップにハードコードできます。マップ エディターの右側のフィールドをクリックし、ハードコードされた値をValue[プロパティ] ボックスに設定します。

  2. (ダミーの) リクエスト メッセージを作成した後xpath()表現メッセージ割り当て形状

    xpath(myRequestMessage, "//*[local-name()='NameOfFieldHere']") = 3; // Or set to it your variable

  3. フィールドがスキーマで識別されている場合、xpath の代わりに識別されたフィールドを使用できます。表現メッセージ割り当て形状:

    myRequestMessage.NameOfFieldHere = 3;

(マルチパート メッセージの場合はmyRequestMessage.Part.NameOfFieldHereOFC になることに注意してください)

免責事項の 1 つ: WCF サービス要求メッセージは些細なもの、つまり 1 つの整数フィールドだけであると想定しています。メッセージが大きい場合、使用//local-name() ...はお勧めしません。

  1. という名前のノードが複数存在する場合がありますNameOfFieldHere
  2. BizTalk で使用される XSL パーサーは、大きな xml ドキュメントを評価するときに遅く、リソースを大量に消費します。//
于 2013-01-18T12:47:22.967 に答える
0

この場合、Biztalk Scheduler Adapter が非常に役立ちます。ユーザーが設定した定義済みのスケジュールに基づいて、目的の XML を生成します。そのため、XML にハードコードされた値を入力し、このアダプターを介してそれらを受け取ります。

于 2013-02-08T04:19:46.367 に答える