C# 工作流服务-书签未恢复

C# 工作流服务-书签未恢复,c#,workflow,workflow-foundation-4,C#,Workflow,Workflow Foundation 4,我使用WF4.5创建了一个非常简单的工作流服务,我在VS.NET2012的控制台应用程序中运行该服务(添加了一个服务引用)。在WF服务中,我有一个ReceiveActivity,它创建一个服务实例,然后在调用NativeActivity之后立即调用它,它使用FileSystemWatcher/bookmarks来监视目录中的传入文件。出现了两个问题: 当文件实际放入文件夹时,工作流将处于空闲状态,并且永远不会恢复。服务处于空闲状态/在持久性存储中显示为空闲状态,但从未恢复 这是一个完全独立的问题

我使用WF4.5创建了一个非常简单的工作流服务,我在VS.NET2012的控制台应用程序中运行该服务(添加了一个服务引用)。在WF服务中,我有一个ReceiveActivity,它创建一个服务实例,然后在调用NativeActivity之后立即调用它,它使用FileSystemWatcher/bookmarks来监视目录中的传入文件。出现了两个问题:

  • 当文件实际放入文件夹时,工作流将处于空闲状态,并且永远不会恢复。服务处于空闲状态/在持久性存储中显示为空闲状态,但从未恢复

  • 这是一个完全独立的问题,但我最终需要完成的是,如果文件在给定的时间范围内不存在,则还需要设置警告/错误超时。似乎创建一个包含三个分支的Pick活动(两个延迟和实际的文件监视器活动)是一种可行的方法;这听起来对吗

  • 我不知道如何让#1以上的工作和/或有更好的方法。任何想法/建议将不胜感激-提前感谢

  • 如果您正在查看文件,则必须在看到文件时恢复书签
  • 不完全是。如果警告计时器熄灭,拾取中的其他两个分支将被取消,因此,错误计时器将永远不会熄灭

  • 谢谢你,约翰,我知道了。它实际上是在尝试恢复书签,但收到了一个BookmarkResumptionResult.NotReady,我没有注意到。再次感谢!