【问题标题】:Implementing pure xaml workflows with some requirements实现具有一些要求的纯 xaml 工作流
【发布时间】:2009-01-26 11:11:23
【问题描述】:

我目前负责开发一种在我们的应用程序中使用 WF 的方法,我有一些需要遵守的要求。

  • 我需要能够完全基于文本定义工作流,以便可以存储和检索它以执行。
  • 在工作流执行期间,需要在活动之间传递一个 DataObject,以便它们可以对其执行操作。
  • 活动由外部类定义,活动需要访问定义它们的类的实例,以便调用其方法。

我一直在研究 WF,我想出了一些解决方案,但我不确定它们是否是最好的。

我最大的问题之一是为活动提供定义它们的类的实例。有没有办法为工作流运行时提供一个活动工厂或类似的东西? 另一个问题来自使用纯 XAML 工作流定义。我需要能够将 DataObject 传递给第一个活动,以便它可以在工作流中使用。

我很难解释这个问题,我希望它足够清楚。

任何帮助将不胜感激。 谢谢。

【问题讨论】:

    标签: .net xaml workflow-foundation


    【解决方案1】:

    【讨论】:

      【解决方案2】:

      关于向运行时提供在 XOML 工作流上下文中使用的外部活动,请查看将 TypeProvider 服务添加到运行时:

      TypeProvider provider = new TypeProvider(runtime);
      provider.AddAssembly(assembly);
      runtime.AddService(provider);
      

      此外,请查看定义具有属于您的 DataObject 类型的 DependencyProperty 的根活动。将基于 XOML 的工作流设为该基本类型的根活动。然后,您应该能够将您的对象作为参数传递到基于 XOML 的工作流中,而不会出现任何问题。

      【讨论】:

      • 我不认为 TypeProvider 解决了我的问题。请参考我在帖子中的回答。谢了。
      【解决方案3】:

      我一直在查看TypeProvider,但似乎我只能添加新的活动地点。然而,运行时将继续自己实例化活动。 我希望能够实例化它们,这样我就可以将一些参数传递给构造函数。

      我几乎按照你描述的方式解决了 DataObject 问题。

      【讨论】:

        【解决方案4】:

        我认为WorkflowLoaderService 是我正在寻找的课程。

        应该这样做。谢谢。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-08-17
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多