问题:
是否有一种简单的方法可以找出用于创建工作流的活动类型?
背景:
我正在编写自己的基于WorkflowApplication
的Windows Workflow 4托管引擎,我在尝试从数据库中加载持久性工作流时遇到了一些问题。我使用WorkflowApplication.Load(Guid)
方法启动工作流程,但这需要我创建WorkflowApplication
。
查看SqlWorkflowInstanceStore
数据库,我没有看到存储在任何地方的类型名称,我看不到很容易将其关联起来,而不是自己创建另一个表来存储该信息。
答案 0 :(得分:2)
使用工作流服务时,相对URL用于确定WorkflowServiceHost是否拥有工作流实例,这是通过数据库中的ServiceDeploymentsTable表完成的。使用WorkflowApplication时没有类似的机制,因此您必须自己滚动。
您可以做的一件事是使用属性提升将类型存储在InstancePromotedPropertiesTable中。它将使您无法创建新表,但这不是解决问题的理想方法。
答案 1 :(得分:1)
我猜你有两个选择,但两者都不是最佳选择: