Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 面向对象+工作流4_.net_.net 4.0_Workflow_Workflow Foundation_Workflow Foundation 4 - Fatal编程技术网

.net 面向对象+工作流4

.net 面向对象+工作流4,.net,.net-4.0,workflow,workflow-foundation,workflow-foundation-4,.net,.net 4.0,Workflow,Workflow Foundation,Workflow Foundation 4,有一个简单的新手问题 我想在两个工作流之间分享一个对话。让我们考虑下面的经典OOP场景,您有2个具有相同属性的类,一个合理的OOP方法是创建基类并实现这个属性一次。 当您创建一个新的工作流项目时,您将获得一个xaml文件,并且您的cs将自动生成。我希望能够从一个活动继承,该活动将指定InArgument并使工作流在其参数设计器中显示其属性。使用这种方法,我应该能够在一个活动中定义一次InArgument,并强制使用派生WF来拥有这个参数 这有意义吗 假设这是一个框架的一部分,我希望我的框架用户做

有一个简单的新手问题

我想在两个工作流之间分享一个对话。让我们考虑下面的经典OOP场景,您有2个具有相同属性的类,一个合理的OOP方法是创建基类并实现这个属性一次。 当您创建一个新的工作流项目时,您将获得一个xaml文件,并且您的cs将自动生成。我希望能够从一个活动继承,该活动将指定InArgument并使工作流在其参数设计器中显示其属性。使用这种方法,我应该能够在一个活动中定义一次InArgument,并强制使用派生WF来拥有这个参数

这有意义吗

假设这是一个框架的一部分,我希望我的框架用户做到最低限度,我仍然希望他能够使用仅使用CodeActivities的deisgner,这是不合理的

我怎样才能做到呢


Ariel

仅供参考,在WF4中,VS2010 WF设计器仅生成XML。没有生成C代码

您要做的是在代码中开发一个自定义活动,它将InArgument作为属性公开。您的自定义活动将显示在工具箱中,可用于您设计的任何工作流。

FYI, MSDN中WP4论坛的回复:

WF4工作流不是OOP语言, 我不认为这是个好主意 继承现有工作流的想法。像 a是另一种解决办法。你可以 创建一个堆肥活动作为 工作流模板。然后用户可以 使用创建自己的工作流 您的工作流模板


为什么这个问题不清楚?与其记下来,不如向我解释什么需要更清楚。