Tracking_SqlTrackingQuery(3)

本文介绍如何使用SqlTrackingQuery从数据库中获取指定工作流实例的活动状态记录。通过遍历ActivityEvents集合,展示每项活动的类型、上下文GUID、状态发生时间及执行状态等详细信息。
 

Activity状态对象:ActivityTrackingRecord

Activity状态对象ActivityTrackingRecord以集合成员的方式存于SqlTrackingWorkflowInstance的ActivityEvents集合中

 无须在WorkflowRuntime宿主程序中

        Shared Sub 得到Activity运行状况列表(ByVal 实例Id As Guid)

            Dim sql As String = "Initial Catalog=Tracking;Data Source=WXWINTER\SQLEXPRESS;Integrated Security=SSPI;"

            Dim 查询As SqlTrackingQuery = New SqlTrackingQuery(sql)

            Dim 被查询的实例As SqlTrackingWorkflowInstance = Nothing

            查询.TryGetWorkflow(实例Id, 被查询的实例)

            If 被查询的实例IsNot Nothing Then

                Console.WriteLine(vbCrLf + "Activity 曾发生的状态列表:" + vbCrLf)

                Console.WriteLine()

                Dim Activity状态As ActivityTrackingRecord

                For Each Activity状态In 被查询的实例.ActivityEvents

                    Console.WriteLine("Activity类型:" + Activity状态.ActivityType.ToString)

                    Console.WriteLine("Activity上下文GUID:" + Activity状态.ContextGuid.ToString)

                    Console.WriteLine("该状态发生的时间:" + Activity状态.EventDateTime.ToString)

                    Console.WriteLine("Activity曾发生的状态:" + Activity状态.ExecutionStatus.ToString)

                    Console.WriteLine("EventOrder字段值:" + Activity状态.EventOrder.ToString)

                    Console.WriteLine("Activity容器对象GUID:" + Activity状态.ParentContextGuid.ToString)

                    Console.WriteLine("Activity名(开发时对象名):" + Activity状态.QualifiedName)

                    Console.WriteLine()

                    '此时,该WorkFlow 类本身也作为一个Activity被记录状态,他是所有Activity的容器

                    '有些Activity可以成为另一个Activity的容器

'Activity可能会有如下状态

                    'Canceling、Closed、Compensating、Executing、Faulting、Initialized

                Next

            End If


  ActivityTrackingRecord.JPG
属性

ActivityType

Activity类型

Annotations

Body

 

ContextGuid

Activity上下文GUID

EventArgs

 

EventDateTime

该状态发生的时间

EventOrder

EventOrder字段值

ExecutionStatus

状态说明,ActivityExecutionStatus类型,值如下
'Canceling、Closed、Compensating、Executing、Faulting、Initialized

ParentContext

Activity容器对象GUID

QualifiedName

Activity名(开发时对象名)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值