2011-01-06 111 views
2

Windows Workflow Foundation 3.x中,您曾经能够创建一个BaseWorkflow类,您可以在该工作流中定义一些属性。Windows Workflow Foundation 4创建基本活动

然后当您创建工作流程时,您可以说它从BaseWorkflow类派生,因此它从基础工作流继承所有属性。

我们可以在Windows Workflow Foundation 4(WF 4)中实现同样的功能吗?就像在BaseActivity上定义InArgument和OutArgument一样,然后创建另一个从BaseActivity派生的Activity。

我试图通过修改从XAML假设<活动> < /活动>喜欢<BaseActivity> </BaseActivity > ...这是我们做到了在WF 3.x中的方法

这似乎并不在WF 4工作

回答

2

找到了解决方案。其实很简单。由XAML声明生成的类标记为partial,因此您可以为您的活动(工作流)基础创建一个类(也标记为partial)。然后在XAML中,只需将活动的类属性更改为刚刚创建的类的完整名称空间即可。

基本活动实例:

public partial class OurBaseWorkflow : Activity 
{ 
    public InArgument<string> StandardInput { get;set; } 
} 

XAML例如:

<p:Activity x:Class="MyNamespace.OurBaseWorkflow" 
      xmlns:s="clr-namespace:System;assembly=mscorlib" 
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> 
    ... 
</p:Activity> 

使用这种方法,你可以在国内外享有很高的论点在基类中定义并且显示在您的派生活动好。

0

是的,你可以创建一个BaseActivity并定义其InArguments和OutArguments。然后,您可以创建一个新类,例如Activity1:BaseActivity,它仍然具有BaseActivity的参数和参数

+0

我可以在仅限XAML的情况下执行此操作吗?没有创建一个类? – pdiddy 2011-01-07 15:10:28

+0

我正在寻找相同的答案。我需要一个仅适用于XAML的解决方案,并且替换XAML中的活动标记不会像pdiddy所示那样工作。 – Kilhoffer 2011-06-01 16:25:40

相关问题