Windows Workflow Foundation 的 Workflows 的多个工作流实例
multiple workflow instances of Workflows with Windows Workflow Foundation
我是 WF 新手。我想做的是创建一个简单的工作流服务并在各种客户端中调用它们。所以我所做的是,我创建了一个工作流服务。它有一个 xamlx 文件,并且有一个包含 Receive 和 Send Reply activity 的序列。我也有相关性。所以第一个 ReceiveandSendReply activity 有 CanCreateInstance True。除了这个我
写了一些我自己的代码活动。
现在我已将此服务托管在 IIS 上,并尝试使用控制台应用程序调用此服务。我添加了 Web 引用并创建了一个服务客户端并将值传递给服务。它给了我预期的结果。
但是当我尝试同时 运行 另一个客户端时,它给我实例错误。我认为工作流没有为第二个客户端启动一个新实例。
所以我搜索了一下,发现使用workflowservicehost可以实现多实例化。但无法找到一种方法来做到这一点。
我认为我调用服务的方式不正确。我只是根据服务引用创建一个新对象并调用该操作。
谁能帮我解决这个问题?
请查看您为工作流设置的关联规则。如果多个客户端传递与同一实例相关的参数 - 将不会创建新实例。
因此,如果您需要一个新实例,您要么需要设置不同的关联规则,以便不同客户端的调用将关联到不同的工作流实例。
我是 WF 新手。我想做的是创建一个简单的工作流服务并在各种客户端中调用它们。所以我所做的是,我创建了一个工作流服务。它有一个 xamlx 文件,并且有一个包含 Receive 和 Send Reply activity 的序列。我也有相关性。所以第一个 ReceiveandSendReply activity 有 CanCreateInstance True。除了这个我 写了一些我自己的代码活动。
现在我已将此服务托管在 IIS 上,并尝试使用控制台应用程序调用此服务。我添加了 Web 引用并创建了一个服务客户端并将值传递给服务。它给了我预期的结果。
但是当我尝试同时 运行 另一个客户端时,它给我实例错误。我认为工作流没有为第二个客户端启动一个新实例。
所以我搜索了一下,发现使用workflowservicehost可以实现多实例化。但无法找到一种方法来做到这一点。
我认为我调用服务的方式不正确。我只是根据服务引用创建一个新对象并调用该操作。
谁能帮我解决这个问题?
请查看您为工作流设置的关联规则。如果多个客户端传递与同一实例相关的参数 - 将不会创建新实例。
因此,如果您需要一个新实例,您要么需要设置不同的关联规则,以便不同客户端的调用将关联到不同的工作流实例。