5

我们正在我们自己的应用程序中重新托管 WF-4 设计器。我们有一个叫做过滤器的东西。现在我们需要一个活动,让您运行此过滤器并在 ForEach 中处理结果。很简单。但是这些过滤器有一个参数列表(用于运行过滤器),需要在工作流主机中填写。过滤器参数列表可以是从 0 到 N 的任何值。

在用户设置 FilterId 后,我们有没有办法创建该 Filter 的实例,检查其参数列表并将这些参数添加到 Activity 中?参数基本上只是Name、Type,需要用户填写其Value。

另一件事,我们不想在运行时创建过滤器的实例,那会太昂贵。在运行时,我们只需要过滤器 id 和参数值列表。

如果有一种方法可以在 FilterId 更改时更新它并验证此列表中的所有参数是否具有值,我会很高兴拥有参数的静态属性。

4

1 回答 1

3

我自己没有这样做,但如果我没记错的话,我已经看到其他人通过实现 ICustomTypeDescriptor 接口来做类似的事情。这就是 Interop 活动用来将 WF3 活动的属性显示为 WF4 InArgument/OutArguments。

于 2011-10-04T06:51:20.870 回答