Condition 元素 (WorkflowActions)

上次修改时间: 2015年3月9日

适用范围: SharePoint Foundation 2010

本文内容
属性
子元素
父元素

表示一条 Condition 语句,此语句是可在声明性的、基于规则的无代码工作流编辑器(如 Microsoft SharePoint Designer 2010)中显示的规则语句的一部分。

当 Microsoft SharePoint Foundation 2010 中的 SharePoint 列表或文档库项目所对应的事件触发工作流时,通常需要计算应采取哪种工作流操作,或者是否需要执行操作。Condition 元素允许工作流使用工作流编辑器为其提供的值和参数来执行此计算。

每个 Condition 元素还对应于指定的 SharePoint Foundation 2010 工作流库内部的一个 Boolean 方法。这些方法用于计算由其参数传递的值并返回 true 或 false。

Condition 元素包含有关在其中实现 Condition 代码的 .NET 程序集以及发出函数调用所需的参数的信息。它还包含有关应如何对工作流编辑器显示 Condition 语句的信息。

<WorkflowInfo>
      <Conditions>
            <Condition>
               <RuleDesigner>…</RuleDesigner>
               <Paramaters>…</Parameters>
            </Condition>
            <Default>…</Default>
      </Conditions>
      <Action>…</Actions>
</WorkflowInfo>

属性

属性

说明

AppliesTo

必需属性,类型为 text。指定所计算的条件语句适用于 SharePoint 列表还是文档库。通过对值进行更改,可以在工作流编辑器中显示或隐藏特定的条件语句,具体取决于与工作流关联的 SharePoint 列表的类型。

下面的值不区分大小写:

  • all   指定条件语句可用于所有列表和文档库类型。

  • doclib   指定仅当工作流与文档库相关联时条件语句才对工作流编辑器可见。如果工作流与任何其他类型的列表相关联,则条件语句对工作流编辑器不可见。

  • list   指定仅当工作流与 SharePoint 列表相关联时条件语句才对工作流编辑器可见。如果工作流与列表类型之外的任何类型相关联,则条件语句对工作流编辑器不可见。

  • none   指定条件语句对工作流编辑器不可见。

Assembly

必需属性,类型为 text。指定包含 Condition 元素的实现代码的 .NET 程序集。

值类型:String。

指定包含工作流代码的 .NET 程序集。格式应如下所示:

程序集名称、版本、区域性和 PublicKeyToken

示例:

Assembly="Microsoft.SharePoint.WorkflowActions,

Version=12.0.0.0,

Culture=neutral,

PublicKeyToken= 71e9bce111e9429c"

ClassName

必需属性,类型为 text。包含在其中实现 Condition 元素代码的完全限定类名。

值类型:String。

在其中实现自定义 Condition 元素代码的完全限定类名。

示例:

XML:

ClassName="Microsoft.SharePoint.WorkflowActions.Helper"

FunctionName

必需属性,类型为 text。实现 Condition 代码的类中的 Boolean 方法的名称。

值类型:String。

表示在其中实现 Condition 元素代码的类中的方法名称。

示例方法:

Bool myCondition(WorkflowContext context, string ListGUIDorName, int ItemWorkflowAttachedTo)

XML:

FunctionName="myCondition"

Type

可选属性,类型为 text。指定 Condition 元素的值为 Custom 还是 Advanced。

下面的值不区分大小写:

  • Custom   用于将当前 SharePoint 列表或文档库项目中找到的值与工作流设计器指定的值进行比较。

  • Advanced   用于指示 Condition 可用于比较任何类型(如文本、整数和日期)的两个值。

UsesCurrentItem

可选属性,类型为 Boolean。指定当前所选的项目与工作流相关联。

值类型:Boolean。

如果设置为 true,则工作流将绑定到已启动工作流实例的 SharePoint 列表项或文档库项目。在使用声明性的、无代码工作流编辑器时,此值始终返回 true 且无法进行更改。

子元素

RuleDesigner

Parameters

父元素

Conditions

示例

下面的示例演示如何在工作流设计过程中对无代码编辑器公开 Condition 元素。

<WorkflowInfo Language="en-us">
   <Conditions And="and" Or="or" Not="not" When="If" Else="ElseIf">
      <Condition 
              AppliesTo="list" 
              Assembly="MyWorkflowProject.Workflow1,
                        PublicKeyToken=71e9bce111e9429c,
                        Version=1.0.0.0,
                        Culture=neutral" 
              ClassName="MyWorkflowProject.Workflow1.MyClass"
              FunctionName="IsOrderComplete" 
              Name="Check if item in %1 is a complete order"
              Type="Custom"
              UsesCurrentItem="True">
          <RuleDesigner>...</RuleDesigner>
      </Condition>
   </Conditions>
</WorkflowInfo>

请参阅

概念

工作流操作架构概述

创建声明性、无代码工作流编辑器

其他资源

Conditions 元素