与this question相关。
我有一个xamlx工作流服务,它在运行时从数据库加载部分定义(使用ActivityXamlServices.Load)。原因是我需要版本控制,请参阅相关问题。我将使用WCF路由将呼叫定向到正确的服务。
我动态加载的部分包含Receive个活动。但是,只要工作流未启动,此活动就是“不可见的”,因为我从数据库加载的工作流部分仅在工作流启动时加载。因此,从外部看来,工作流中似乎没有Receive
活动。
除了无法生成工作流服务的合同外,我也无法调用该服务。我的第一次尝试是在工作流服务上使用正确的合同进行肥皂呼叫。但是,在这种情况下,运行时不会自动激活我的工作流。所以问题是,如何启动IIS中托管的工作流程?
答案 0 :(得分:1)
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/
答案 1 :(得分:1)
Windows Server AppFabric包含一个有用的自动启动功能。
查看How to create a WF4 WorkflowServiceHostFactory for AppFabric Auto-Start
我还有一个示例,演示如何从具有虚拟路径提供程序的数据库加载XAMLX Windows Workflow Foundation (WF4) - Workflow Service Repository Example