英語で読む

次の方法で共有


パイプライン ステージ

このトピックでは、 実行モード プロパティとステージ アフィニティについて説明します。

"実行モード" プロパティ

パイプライン ステージでは、パイプラインの実行中、メッセージの形式を識別する最初のコンポーネントだけが実行される場合と、すべてのコンポーネントが実行される場合とがあります。 実行パターンを決定する プロパティは 実行モードです

注意

このプロパティは、パイプライン テンプレートに追加されたステージの読み取り専用プロパティとして存在しますが、その動作を理解することは重要です。

[実行モード] プロパティが [すべて] に設定されている場合、ステージ内のすべてのコンポーネントが構成されたシーケンスで実行されます。 このモードは、論理タスクを完了するために複数のコンポーネントを実行します。 この場合、このパイプライン ステージに送信されたメッセージを処理しているときに、いずれかのコンポーネントでエラーが発生すると、実行時エラーが発生します。

パイプラインを使用して複数の形式のメッセージを受信する場合、 実行モード プロパティは FirstMatch に設定されます。 このモードでは、メッセージを認識した最初のコンポーネントだけが実行されます。 ステージ内のいずれのコンポーネントもメッセージを認識しなかった場合、実行時エラーが発生します。

各ステージには独自の 実行モード 設定を設定できるため、パイプライン内のさまざまなステージで異なる実行モードを使用できることに注意してください。

注意

このリリースのBizTalk Serverでは、送信パイプライン内のすべてのステージと、受信パイプラインの逆アセンブリを除くすべてのステージの実行モード プロパティの値が All に設定されています。 逆アセンブル ステージの 実行モード プロパティの値は FirstMatch に設定されます。 ステージの 実行モード プロパティを変更することはできません。

パイプライン ステージのプロパティを確認するには

  1. パイプライン デザイナーでステージの図形をクリックします。

  2. プロパティ ウィンドウの [全般] セクションで、次のプロパティを確認します。

    プロパティ 目的
    名前 ステージの名前を示します。
    [実行モード] ステージの実行パターンを示します。

    有効な値: All または FirstMatch
    [コンポーネントの最小数] ステージに追加することのできるパイプライン コンポーネントの最小数を示します。
    [コンポーネントの最大数] ステージに追加することのできるパイプライン コンポーネントの最大数を示します。
    [ステージ ID] ステージの一意の識別子です。

ステージ関係

パイプライン コンポーネントは、そのコンポーネントがパイプラインの特定のステージ (1 つまたは複数) 内で使用するために作成されたことを意味するステージ関係を持ちます。

COM ベースのパイプライン コンポーネントは、ステージ ID を実装カテゴリとして使用してを登録することで、ステージ アフィニティを表します。NET ベースのパイプライン コンポーネントでは、 ComponentCategory クラス属性を使用してステージ アフィニティを指定します。 コンポーネントがそれ自体を複数のステージに関連付けることができることに注意してください。コンポーネントには、複数の実装カテゴリまたは ComponentCategory 属性を含めることができます。

次の表は、コンポーネントのカテゴリと、それぞれに関連付けられたステージを示しています。

コンポーネント カテゴリ コンポーネントを配置可能なステージ 説明
CATID_Decoder {9d0e4103-4cce-4536-83fa-4a5040674ad6} デコード すべてのデコード コンポーネントはこのカテゴリを実装する必要があります。
CATID_DisassemblingParser {9d0e4105-4cce-4536-83fa-4a5040674ad6} 逆アセンブル すべての逆アセンブル コンポーネントおよび解析コンポーネントは、このカテゴリを実装する必要があります。
CATID_Validate {9d0e410d-4cce-4536-83fa-4a5040674ad6} 検証 すべての検証コンポーネントはこのカテゴリを実装する必要があります。
CATID_PartyResolver {9d0e410e-4cce-4536-83fa-4a5040674ad6} ResolveParty パーティの解決コンポーネントに使用されるステージです。
CATID_Encoder {9d0e4108-4cce-4536-83fa-4a5040674ad6} エンコード すべてのエンコード コンポーネントはこのカテゴリを実装する必要があります。
CATID_AssemblingSerializer {9d0e4107-4cce-4536-83fa-4a5040674ad6} シリアル化 すべてのシリアル化コンポーネントおよびアセンブル コンポーネントは、このカテゴリを実装する必要があります。
CATID_Any {9d0e4101-4cce-4536-83fa-4a5040674ad6} 上記の全ステージ このカテゴリを実装するパイプライン コンポーネントは、任意のパイプライン ステージに配置できます。

参照

パイプライン デザイナーを使用したパイプラインの作成
パイプライン、ステージ、およびコンポーネントについて