【发布时间】:2015-06-14 19:11:39
【问题描述】:
我了解 Windows Workflow Foundation 4.5 支持并行和动态更新工作流定义。我在 Internet 上找到的示例很少,但都描述了用于更新工作流的基于代码的方法。我想制作一个实用程序,开发人员可以使用它来更新工作流程而无需编码。 (仅使用 Xaml 操作应该是我们理想的情况)
My Utility 做了以下事情,
- 我从用户那里获取 Base Xaml(我想要更新的工作流定义)文件名和程序集 (V1)。
- 我通过调用
prepareForUpdateAPI 准备更新。并将其保存为 ForUpdate XAML。 - 我从 Visual Studio 项目中删除了 Base Xaml。
- 我在项目中加载了更新的 Xaml 文件(而不是基础 xaml),并修改了工作流。
- 修改和重建后,我再次打开我的更新实用程序并从用户那里获取修改后的 Xaml (v2) 的输入并创建更新映射。
- 之后我尝试更新正在运行的实例(使用更新映射),当时我的实用程序显示它们已成功更新。
- 虽然它们已更新,但在运行时会产生不良影响(我遇到了 {
ICompiledExpressionRoot for compiled location 'a'} 之类的异常,其中{'a'}是我的变量),与表达式解析、Root 等有关。
是否有人试图实现相同的目标或有一些想法。我的错误在 Visual Basic 和基于 Visual C# 的 XAML 中是一致的。
【问题讨论】:
标签: c# .net workflow-foundation-4 workflow-activity