繁体   English   中英

WF-如何从XAML工作流获取WorkflowInvoker结果

[英]WF - How to get the WorkflowInvoker result from a XAML workflow

我在XAML中有一个简单的工作流程,由序列和自定义活动组成。 将来会有更多活动。 XAML如下:

<Activity mc:Ignorable="sap sap2010 sads" 
...
  <Sequence sap2010:WorkflowViewState.IdRef="Sequence_1">
    <local:CoefficientWorkflow sap2010:WorkflowViewState.IdRef="CoefficientWorkflow_1">
    </local:CoefficientWorkflow>
    <sads:DebugSymbol.Symbol>d11DOlxGQU1FMlxQcm9qZWN0MDJcRkJTXFdlYkFwcFxNb2R1bGVzXEZCUy5BTE9cc3JjXEZCUy5BTE8uV29ya2Zsb3dcV29ya2Zsb3dzXEFsb1dvcmtmbG93LnhhbWwDKwM0DgIBASwFMiECAQIvCy9KAgED</sads:DebugSymbol.Symbol>
  </Sequence>
  <sap2010:WorkflowViewState.ViewStateManager>
    <sap2010:ViewStateManager>
      <sap2010:ViewStateData Id="CoefficientWorkflow_1" sap:VirtualizedContainerService.HintSize="200,22" />
      <sap2010:ViewStateData Id="Sequence_1" sap:VirtualizedContainerService.HintSize="222,146">
        <sap:WorkflowViewStateService.ViewState>
          <scg:Dictionary x:TypeArguments="x:String, x:Object">
            <x:Boolean x:Key="IsExpanded">True</x:Boolean>
          </scg:Dictionary>
        </sap:WorkflowViewStateService.ViewState>
      </sap2010:ViewStateData>
      <sap2010:ViewStateData Id="FBS.ALO.Workflow.Workflows.AloWorkflow_1" sap:VirtualizedContainerService.HintSize="262,226" />
    </sap2010:ViewStateManager>
  </sap2010:WorkflowViewState.ViewStateManager>
</Activity>

我使用以下代码调用工作流程:

WorkflowInvoker invoker = new WorkflowInvoker(workflow1);
var result = invoker.Invoke();

目前,调用工作流后, result变量包含一个空字典。 当序列中包含的活动返回一个值时,我需要您的帮助来获取该活动的输出,并在整个工作流中对外公开。

结果将保存一个输出字典。

词典的键是您在工作流级别在工作流中创建的任何OUT自变量。

必须首先将活动返回的值从活动传递到工作流级别的OUT参数中。
通过在Activity中创建OUT参数并将其分配给工作流中的OUT参数,可以使用Visual Studio中的“属性”对话框来实现。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM