1

我正在研究使用 .NET 4.5 Workflow Foundation 为某些对象实现状态机。我想知道如何保存状态之间转换的历史。我会使用持久性,但我的理解是这只是跟踪当前状态,而不是转换的历史,并且在达到终端状态时将其删除。

具体来说,我正在寻找类似以下的内容:

Sequence  Date         Original State   Action      New State    Actor
--------  -----------  ---------------  ----------  -----------  ---------
1         12/25/2013   <none>           <none>      Draft        bsmith
2         12/27/2013   Draft            Submit      Pending      cjones
3         1/2/2014     Pending          Approve     Published    dkelly

确切的格式有待确定,但如图所示,这显示了对象如何从一种状态移动到另一种状态,由谁以及何时移动。

WF如何做到这一点?

4

1 回答 1

0

我建议您在 MSDN 上阅读有关Workflow Tracking 和 Tracing的内容,尤其是您将希望阅读有关 Tracking Participants 和 custom Tracking Participants 的信息。默认参与者是我相信的 Windows 事件日志。

这是自定义 SQL 跟踪参与者的 MSDN 示例:SQL 跟踪示例

于 2015-05-05T16:32:04.293 回答