Windows Workflow Foundation WF4 - 在单个服务中处理多个工作流

时间:2015-02-19 06:36:17

标签: c# wcf workflow-foundation-4 workflowservice

我想创建一个应用程序,可以由我的组织中的不同团队使用,以自动化他们在日常活动中遵循的流程。

我的应用程序将具有Client-Server-Database。它应该提供以下功能。

  • 用户必须能够运行不同的工作流程,以及具有不同上下文(不同数据/业务对象)的相同工作流程的多个实例。
  • 某些工作流程将长时间运行,涉及多个用户/客户端会话并等待外部用户输入。因此,工作流必须能够持久化并响应客户端的某些信号。
  • 所有工作流程执行只能在服务器中完成。客户端将只显示当前的工作流程执行进度。

问题在于,所有团队都没有遵循共同的工作流程。每个团队都有自己的工作流程。某些团队可以根据他们正在执行的角色或任务拥有多个工作流程。我不想为每个工作流程提供多个工作流服务。我只想创建一个WCF服务,它可以处理来自不同团队的不同请求,并根据请求启动服务器中的相应工作流程。

是否有使用Workflow Foundation开发此应用程序的建议?

提前致谢...

1 个答案:

答案 0 :(得分:0)

执行此操作的一种方法是使用工作流的松散XAML定义,这些定义存储在数据库中。您的WCF服务可以使用XamlActivityServices在运行时保护(并保存)XAML文件并启动工作流。

请查看此链接,了解有关如何使用基于XAML的工作流程的其他详细信息:https://msdn.microsoft.com/en-us/library/ff458319%28v=vs.110%29.aspx