none
WF SqlTrackingService 详解(1) RRS feed

  • 常规讨论

  • 一、跟踪workflow的状态
    如果想使用wwf 进行开发,最重要的就是跟踪workflow和activity 的运行状态。
    本文章分几个部分,详细的解释wwf 里面SqlTrackingService的情况。

    概念解释: 3种跟踪类型
    workflow Events
    跟踪 workflow instance 的状态。
    例如: 'Initialized' 和'Executing'等
    Activity Level Events跟踪Activity instance 的状态
    User Tracked events
    跟踪用户自指定的Activity的状态

    1.
    建立Tracking数据库
    下载Windows Workflow Foundation Hands-On Lab (RC版本的).
    运行C:\Windows Workflow FoundationRC\Labs\SQL_Scripts\Lab03里面的CreateDatabaseObjects.cmd 文件.
    如果运行成功将出现如下画面

    注:需要的sql server2005或者 sql server2005\SQLEXPRESS,
    笔者的修改 修改了Osql -S %COMPUTERNAME%\SQLEXPRESS -E
    -n -i "Create_TrackingStore.Sql"

    变成了Osql -S %COMPUTERNAME% -E
    -n -i "Create_TrackingStore.Sql"




    2.
    建立Test工程

    建立一个C#的“Sequential Workflow Console Application”.的工程



    3.
    把workflow1.cs的名称改为SimpleWorkflow.cs


    4.
    添加引用如下:


    using System;


    using System.Data;


    using System.Data.Sql;


    using System.Data.SqlClient;


    using System.Data.SqlTypes;


    using System.Globalization;


    using System.IO;


    using System.Collections.Generic;


    using System.Text;


    using System.Threading;


    using System.Workflow.ComponentModel;


    using System.Workflow.Activities;


    using System.Workflow.Runtime;


    using System.Workflow.Runtime.Hosting;


    using System.Workflow.Runtime.Tracking
    2009年6月25日 8:00