进程类、属性和类型

 

发布日期: 2017年1月

适用于: Dynamics 365 (online),Dynamics 365 (on-premises),Dynamics CRM 2016,Dynamics CRM Online

本主题提供有关 Microsoft Dynamics 365 中可用于处理自定义活动的进程类和类型的信息。

本主题内容

进程类

属性和 Microsoft Dynamics 365 类型

InputAttribute 和 OutputAttribute

DefaultAttribute

ReferenceTargetAttribute

AttributeTargetAttribute

RequiredArgumentAttribute

进程类

进程类可在 Microsoft.Xrm.Sdk.Workflow 命名空间 (Microsoft.Xrm.Sdk.Workflow.dll) 中使用。 可以使用这些类在 Windows Workflow Foundation 中创建自定义活动,然后在 Microsoft Dynamics 365 的“进程”区域,或在 XAML 工作流中使用这些活动。 有关进程类的详细信息,请参阅 Microsoft.Xrm.Sdk.Workflow

属性和 Microsoft Dynamics 365 类型

Microsoft Dynamics 365 类型位于 Microsoft.Xrm.Sdk 命名空间 (Microsoft.Xrm.Sdk.dll) 中。 使用 InputAttributeOutputAttribute 类为输入和输出属性添加批注。

自定义工作流活动支持以下类型:

InputOutputDefault 属性之外,自定义工作流活动支持的一些 Microsoft Dynamics 365 类型还要求您指定其他属性,例如 ReferenceTargetAttributeTarget。 在以下各节中对此进行了说明。

InputAttribute 和 OutputAttribute

以下示例演示如何将输入和输出属性添加到自定义工作流活动中使用的 Money 参数。 它还演示如何为属性指定默认值。

[Input("Money input")]
[Output("Money output")]
[Default("232.3")]
public InOutArgument<Money> MoneyParameter { get; set; }

DefaultAttribute

可以使用 DefaultAttribute 类为输入参数指定默认值。 下面的示例演示如何使用 Default 属性为每种类型设置默认值。

Bool

[Input("Bool input")]
[Output("Bool output")]
[Default("True")]
public InOutArgument<bool> Bool { get; set; }

日期时间

[Input("DateTime input")]
[Output("DateTime output")]
[Default("2004-07-09T02:54:00Z")]
public InOutArgument<DateTime> DateTime { get; set; }

十进制

[Input("Decimal input")]
[Output("Decimal output")]
[Default("23.45")]
public InOutArgument<decimal> Decimal { get; set; }

Double

[Input("Double input")]
[Output("Double output")]
[Default("252.2")]
public InOutArgument<double> Double { get; set; }

EntityReference

[Input("EntityReference input")]
[Output("EntityReference output")]
[ReferenceTarget("account")]
[Default("3B036E3E-94F9-DE11-B508-00155DBA2902", "account")]
public InOutArgument<EntityReference> EntityReference { get; set; }

Int

[Input("Int input")]
[Output("Int output")]
[Default("2322")]
public InOutArgument<int> Int { get; set; }

金钱

[Input("Money input")]
[Output("Money output")]
[Default("232.3")]
public InOutArgument<Money> Money { get; set; }

OptionSetValue

[Input("OptionSetValue input")]
[Output("OptionSetValue output")]
[AttributeTarget("account", "industrycode")]
[Default("3")]
public InOutArgument<OptionSetValue> OptionSetValue { get; set; }

字符串

[Input("String input")]
[Output("String output")]
[Default("string default")]
public InOutArgument<string> String { get; set; }

ReferenceTargetAttribute

EntityReference 属性类型要求您指定使用 ReferenceTargetAttribute 类引用的实体类型。 以下示例演示如何使用 ReferenceTarget 属性将输入和输出属性添加到自定义工作流活动中的 AccountReference 参数。

[Input("EntityReference input")]
[Output("EntityReference output")]
[ReferenceTarget("account")]
[Default("3B036E3E-94F9-DE11-B508-00155DBA2902", "account")]
public InOutArgument<EntityReference> AccountReference { get; set; }

AttributeTargetAttribute

OptionSetValue 属性类型要求您指定使用 AttributeTargetAttribute 类引用的实体和属性。 以下示例演示如何使用 AttributeTarget 属性将输入和输出属性添加到自定义工作流活动中的 OptionSetValue 参数。

[Input("OptionSetValue input")]
[Output("OptionSetValue output")]
[AttributeTarget("account", "industrycode")]
[Default("3")]
public InOutArgument<OptionSetValue> OptionSetValue { get; set; }

RequiredArgumentAttribute

可以使用 System.Activities.RequiredArgumentAttribute 类指定输入参数是必需的。

[RequiredArgument]
[Input("Update Next Birthdate for")]
[ReferenceTarget("contact")]
public InArgument<EntityReference> Contact { get; set; }

另请参阅

自定义工作流活动(工作流程序集)
向自定义工作流活动添加元数据
示例:创建自定义工作流活动

Microsoft Dynamics 365

© 2017 Microsoft。 保留所有权利。 版权