我们正在自己的应用中重新托管WF-4设计师。 我们有一个叫做过滤器的东西。现在我们想要一个允许您运行此过滤器的活动 并在ForEach中处理结果。很简单。 但是这些过滤器具有需要在工作流主机中填充的参数列表(用于运行过滤器)。过滤器参数列表可以是0到N之间的任何值。
用户设置FilterId之后,有没有办法可以创建该Filter的实例,检查其参数列表并将这些参数添加到Activity?参数基本上只是名称,类型,需要用户填写的值。
另一方面,我们不希望在运行时创建Filter的实例,这太昂贵了。在运行时,我们只需要过滤器ID和参数值列表。
我很高兴为参数设置静态属性,如果有一种方法可以在FilterId更改时更新它并验证此列表中的所有参数都有值。
答案 0 :(得分:3)
我自己没有这样做,但如果我没有弄错,我已经看到其他人通过实现ICustomTypeDescriptor接口来做这样的事情。这就是Interop活动用于将WF3活动的属性显示为WF4 InArgument / OutArguments的内容。