2011年4月19日火曜日

Collection 操作のアクティビティ

標準で提供されているアクティビティの中でコレクション操作用のアクティビティがあります。

  • AddToCollection<T> アクティビティ
  • ClearCollection<T> アクティビティ
  • ExistsInCollection<T> アクティビティ
  • RemoveFromCollection<T> アクティビティ

名前からなんとなくイメージがつくかとは思います。AddToCollection アクティビティはコレクションに値を追加、RemoveFromCollection アクティビティはコレクションから値を除去、ExistsInCollection アクティビティはコレクションの中に対象が存在するかのチェック、ClearCollection アクティビティはコレクションのクリア、をそれぞれ行います。

WFCollection2

AddToCollection アクティビティの設定はこのような感じです。Collection プロパティに操作対象のコレクション変数を指定、Item プロパティで追加する値、TypeArgument プロパティは追加するものの Type を指定します。

WFCollection3

ExistsInCollection アクティビティはこのような感じです。AddToCollection アクティビティとほぼ同様のプロパティですが、Result プロパティが増えています。これは存在したかどうかの結果を受け取る Boolean 型の変数を指定します。

WFCollection4

RemoveFromCollection アクティビティは ExistsInCollection アクティビティと同様のプロパティ構成となっています。

このような形で、設定、利用するのですが一つ当然と言えば当然な注意点があります。それはここで利用するコレクションを初期化するのは自分で行う必要がある、という点です。ワークフロー自体の変数として定義する際に初期値を New String(){“1”,”2”,・・・} 等と固定的に記述するか、Assign アクティビティで同じように記述するか、どちらかを行う必要があります。

これがちょっと面倒なんですよね・・・。なので実際に利用する際には、別途カスタムアクティビティ等を用意してその中で作成してしまうのがいいのかな、と思います。

0 件のコメント:

コメントを投稿