WF4托管将自托管控制台应用程序转换为IIS中托管的服务

时间:2011-04-13 14:02:44

标签: iis workflow-foundation-4

我有一个控制台应用程序项目,它是一个使用WorkflowServiceHost自托管的工作流服务。它包含流程图工作流定义(xaml)和cs文件中的一些自定义活动。此应用程序(通过服务引用)连接到以.svc托管的WCF数据服务。我有一个aspnet Web应用程序,它通过服务引用与工作流服务交互。一切正常。

我想将工作流服务控制台应用程序转换为在IIS上托管(我正在使用IIS5进行开发,实时环境是IIS6),但我不确定如何进行操作。我尝试创建一个WCF WorkflowService应用程序项目并复制我的xaml(更改为xamlx - 不确定我是否需要这样做)和cs文件,并创建了对我的WCF数据服务的服务引用但是当我尝试浏览时xamlx我收到错误“无法创建未知类型x”x是一种类型,它应该能够通过它具有的服务引用“看到”。

我有什么托管选项 - 我是否必须使用WorkflowServiceApplication或者我可以使用.svc托管?有人可以指点教程或者告诉我我需要做什么吗?另外,如果可能的话,我希望在类库项目中使用工作流定义,从而将其与主机分开。但并不重要。

1 个答案:

答案 0 :(得分:0)

XAML和XAMLX文件几乎相同但不完全相同。 XAML文件导致生成一个类来包装XAML,并且您使用该类型就像它是普通类一样。不会在运行时编译和解析XAMLX文件。两个根元素也不同,XAMLX没有x:Class属性,因为它没有被编译。

最简单的方法是创建一个XAMLX文件,并将活动从XAML文件复制到XAMLX文件中。