次の方法で共有


マルチパート メッセージの種類を使用する方法

各メッセージには、0 個以上のメッセージ部分で構成されるメッセージ構造の説明であるマルチパート メッセージ型があります。 これらの部分は、XML スキーマ定義 (XSD) 言語スキーマまたは .NET クラスによって定義されます。 独自のマルチパート メッセージ型を定義することも、既存の .NET クラスとスキーマを使用することもできます。

オーケストレーション内で直接メッセージ パーツにアクセスまたは割り当てたり、識別フィールドまたはプロパティ フィールドとして公開されているメッセージ パーツの個々の要素を使用したりできます。 詳細については、「 識別フィールドとメッセージ プロパティの使用」を参照してください。

マルチパート メッセージ型には、必ずしも複数の部分が含まれているとは限りません。

メッセージ パーツは、.NET 型 の XmlDocument によって定義できます。これは、任意の XML ドキュメントを格納するために使用できます。XML シリアル化可能な .NET 型、またはカスタム シリアル化をサポートする任意の .NET 型によって定義できます。

マルチパート メッセージの種類を追加する

  1. [ オーケストレーション ビュー ] ウィンドウで、[ 種類 ] ノードを展開します。

  2. [マルチパート メッセージの種類] を右クリックし、[新しいマルチパート メッセージの種類] をクリックします。

    [マルチパート メッセージ タイプ] フォルダーは折りたたまれている場合に展開され、1つのデフォルトメッセージ部分を持つ新しいマルチパートメッセージタイプが追加されます。

  3. マルチパート メッセージの種類と指定されたメッセージ部分に名前を付けます。

    マルチパート メッセージの種類に複数のメッセージ パーツが必要な場合は、 <New> メッセージ パーツに名前を割り当てることで、追加のパーツを追加できます。

  4. 各メッセージ パーツを.NET クラスやスキーマなどの型に関連付けます。

マルチパート メッセージの種類を削除する

  • [ オーケストレーション ビュー ] ウィンドウで、削除するマルチパート メッセージの種類を右クリックし、[削除] をクリック します

    オーケストレーションから複数部構成のメッセージの種類を削除すると、それを使用するメッセージから型情報も削除されます。

    読み取り専用として表示される項目は、別のオーケストレーションで定義されます。

マルチパート メッセージの種類からパーツを削除する

  • [ オーケストレーション ビュー ] ウィンドウで、削除するパーツを右クリックし、[ 削除] をクリックします。

    メッセージ本文パーツ プロパティが true に設定されている場合、メッセージの種類の メッセージ パーツ を削除することはできません。 最初に、メッセージの種類の他の任意の部分に対してメッセージ本文パーツプロパティを True に設定する必要があります。

マルチパート メッセージ型の型修飾子を設定する

  • [ プロパティ ] ウィンドウで、次のプロパティを設定します。

    プロパティ 説明
    型修飾子 マルチパート メッセージの種類のスコープを決定します。

    - プライベート-このマルチパート メッセージの種類へのアクセスは、包含モジュールに制限されます。
    - Public—このマルチパート メッセージの種類へのアクセスは制限されません。
    - 内部—このマルチパート メッセージの種類へのアクセスは、同じプロジェクト内のモジュールに限定されます。

既存のマルチパート メッセージにパーツを追加する

  • BizTalk Server では、パーツをマルチパート XLANG メッセージに追加したり、パーツが存在する場合に、最初に宣言されたパーツ数より大きいインデックスによってメッセージ パーツを参照したりできます。 この機能は、可変数の添付ファイルを含む SMTP メッセージを送受信する場合に役立ちます。 この機能は次のように実装されます。

  • プロジェクトから、 Microsoft.XLANGs.BaseTypes への参照を追加します。

  • Microsoft.XLANGs.BaseTypes.XLANGMessage 型の変数 (xlangPart など) を作成します。

  • xlangPart.AddPart(…)を呼び出し、Expression シェイプから適切な引数を使用します。

    追加されたパーツは XmlDocument 型であるため、 AddPart() メソッドを使用してカスタム形式のメッセージ パーツを追加することはできません。

宣言されたパーツの数を超える数を含むマルチパート メッセージを受信した場合、オーケストレーション エンジンはメッセージに含まれるパーツの数を読み取り、宣言されたメッセージ型のパーツ数に一致するパーツの適切なパーツ型を構築し、残りの部分の XmlDocument パーツを構築します。

こちらもご覧ください

UI ガイダンスと開発者 API 名前空間リファレンスIBaseMessage.AddPart メソッド (COM)
Web 上の XSD リソース
識別フィールドとプロパティ フィールドの使用
オーケストレーションでのメッセージの使用