在工作流4.0服务持久化时进行版本控制

时间:2010-05-27 10:05:00

标签: workflow-foundation workflow-foundation-4

如果我们将生产工作流的版本1.0投入生产,我们将其更改为1.1。持久化实例会发生什么?如果您有该问题的经验,请告诉我最佳实践

提前致谢。

1 个答案:

答案 0 :(得分:2)

您很可能会遇到一些奇怪的类型转换异常。 WF4不支持将现有工作流实例升级到较新版本。如果你不了解它就是一个严重的问题。

使用工作流服务解决此问题的建议方法是使用多个服务主机,每个服务主机托管一个唯一版本,并将服务路由器(WCF 4中的新服务器)放在它前面。客户端向路由器发送消息,这将根据WorkflowServiceHost应处理请求的消息来决定。

如果您基本上使用WorkflowApplication,则需要执行类似的操作。如果要重新加载工作流实例,请跟踪实例的版本并加载正确的工作流定义。