本文介绍了WF4.5不是编译并排侧C#工作流程的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个IIS托管与我试图在并排侧版本运行C#表达式xamlx工作流程。
我做这篇文章完全一样:的
在工作流的新实例。工作正常,但是当我打电话的工作流程的一个早期版本的实例,它提出了一个错误,告诉我,这不是编
错误:
BTW, I have a custom factory that compiles the workflow.
<serviceActivations>
<add service="Service1.xamlx" relativeAddress="~/Service1.xamlx" factory="MyServiceHostFactory" />
</serviceActivations>
解决方案
After analyzing the source code from .Net, I realized that the method CreateWorkflowServiceHost that I override in my custom workflow factory, adds all supported versions in it's return object.
All I had to do is iterate this collection and compile them all.
Final source code:
protected override WorkflowServiceHost CreateWorkflowServiceHost(WorkflowService service, Uri[] baseAddresses)
{
var host = base.CreateWorkflowServiceHost(service, baseAddresses);
// add your customizations here…
CompileExpressions(service.Body);
foreach (var supportedVersion in host.SupportedVersions)
{
CompileExpressions(supportedVersion.Body);
}
return host;
}
这篇关于WF4.5不是编译并排侧C#工作流程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!