.NET3.0: Windows Workflow Foundation 紹介
2006/11/15
この文書はVisual Studio 2005 TS + Windows Vista RC2 + .NET Framework 3.0 RTMで作成されています。
いろいろな場でしゃべらせていただくときには、WFが一番お勧めだって言い続けています。
簡単なWFのサンプルがこちらの図
まず1つ目のアクティビティで処理を行います。
private void codeActivity1_ExecuteCode(object sender, EventArgs e)
{
CodeActivity ca = (CodeActivity)sender;
this.UserData["value"] = 1;
}
単純にUserDataというDictionaryに1を設定しています。
次のIfElseActivityではどちらに処理を流すかをプロパティで設定できます。
左と、右の流れでアクティビティを1つずつ設定していますが、それらは
private void codeActivity2_ExecuteCode(object sender, EventArgs e)
{
Console.WriteLine("成功");
}
private void codeActivity3_ExecuteCode(object sender, EventArgs e)
{
Console.WriteLine("失敗");
}
どうでもいいコードの見本ですが(^^;;
最後の4番目のアクティビティが
private void codeActivity4_ExecuteCode(object sender, EventArgs e)
{
string 待機 = Console.ReadLine();
}
どうでもいい待機行です。
WFではこのように各種アクティビティを組み合わせて1本のプログラムを作り上げます。
今回の例はシーケンシャルワークフローと言って簡単な流れを記述するもので、ステートマシンワークフローというものもあります。