如何(预)启动xamlx工作流程服务

问题描述:

this question有关。如何(预)启动xamlx工作流程服务

我有一个xamlx工作流服务,它在运行时(使用ActivityXamlServices.Load)从数据库加载它的部分定义。原因是我需要版本控制,请参阅相关问题。我将使用WCF路由将呼叫转接到正确的服务。

我动态加载的部分包含Receive活动。但是,只要工作流程未启动,此活动就是“不可见的”,因为只有在工作流程启动时才加载从数据库加载的工作流程部分。因此从外部看起来好像工作流中没有Receive活动。

除了无法为工作流服务生成合同外,我也无法调用服务。我的第一个尝试是通过工作流服务上的正确合同进行肥皂呼叫。但是,在这种情况下,运行时不会自动激活我的工作流程。所以问题是,我如何启动在IIS内托管的工作流程?

IIS 7.5有一个相对较新的模块,名为Application Warmup。这是一个可配置的工具,允许IIS以不同程度的配置启动您的应用程序。我建议检查出这两个环节:

http://www.iis.net/download/ApplicationWarmUp

http://learn.iis.net/page.aspx/688/using-the-iis-application-warm-up-module/

的Windows Server AppFabric的包括自动启动功能,这将有助于。

退房How to create a WF4 WorkflowServiceHostFactory for AppFabric Auto-Start

我也有一个示例,演示如何从一个虚拟路径提供一个数据库 Windows Workflow Foundation (WF4) - Workflow Service Repository Example

加载XAMLX