活动是流程自动化的构建块。UiPath Studio 带有各种内置活动,以及您可以根据需要通过包管理器安装的专用活动(PDF、邮件、Excel)。您可以阅读UiPath 活动指南以获取更多详细信息和示例,以及如何管理活动包。此外,您可以创建自定义活动,以根据您的需要更好地自动化流程。
1.环境准备
1.1 创建自定义活动需要两个主要步骤:
- 编写自定义活动代码 *.dll
- 封装DLL成为*.nupkg
1.2 创建自定义活动需要以下组件:
安装了 .NET 桌面开发工作的Microsoft Visual Studio。
NuGet 包资源管理器。
1.3 您可以为来自 CodeActivity 或 NativeActivity 的自定义活动编写代码。
这两个活动看起来很相似,但也有区别。
| CodeActivity | NativeActivity |
|---|---|
| 提供了一个 Execute 方法,可以重写该方法以实现您的实现。它还提供对跟踪、变量和参数的访问。 | 提供了 CodeActivity 的所有功能,还可以让你中止活动的执行,取消子活动的执行,安排活动,使用书签,以及活动的动作和功能。 |
| 简单的自定义活动。 | 复杂的自定义活动。 |
| 同步活动。 | 运行长时间的自定义活动。 |
| 在单脉冲执行中执行。 | 在多个执行脉冲中执行。安排其他活动。 |
| 仅使用 CodeActivity 创建不需要 WF 运行时功能的活动。 | 使用高级 WF 运行时功能。 |
2.具体开发自定义活动代码
2.1 Visual Studio 中编写类DLL
为了更好地理解如何为自定义活动编写代码,我们将创建一个活动,要求用户输入两个数字,然后输出它们的幂计算。
- 启动 Microsoft Visual Studio。
- 单击文件 > 新建 > 项目…(快捷键:Ctrl + Shift + N)。显示新建项目窗口。
- 单击Visual C#。显示使用 C# 的所有依赖项的列表。
- 或者,使用自定义活动的首选名称填写名称字段。在我们的例子中,我们可以使用“MathSquareOfSum”
- 选择类库 (.NET Framework)并单击确定。这有助于我们将自定义活动导出为 .dll 文件。
- 单击“项目”>“添加引用…”。
- 搜索和参考并选择它们。System.Activities , System.ComponentModel.Composition
- 单击“确定”按钮。这样就可以使用和引用中的类。System.Activities , System.ComponentModel.Composition

现在才决定是使用 CodeActivity 还是 NativeActivity。在本例中,我们使用 CodeActivity。
-
在指令中,添加以下代码:
using System.Activities;
using System.ComponentModel;` -
为您的自定义活动编写代码。在我们的例子中,它需要看起来像这样:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Activities;
using System.ComponentModel;
namespace ClassMathCustomActivity
{
public class SimpleFormula : CodeActivity
{
[Category("Input")]
[RequiredArgument]
public InArgument<double> FirstNumber { get; set; }
[Category("Input")]
public InArgument<double> SecondNumber { get; set; }
[Category("Output")]
public OutArgument<double> ResultNumber { get; set; }
protected override void Execute(CodeActivityContext context)
{
var firstNumber = FirstNumber.Get(context);
var secondNumber = SecondNumber.Get(context);
var result = System.Math.Pow(firstNumber + secondNumber, 2);
ResultNumber.Set(context, result);
}
}
}
- 单击“构建”>“构建 MathSquareOfSum”。将显示“输出”面板,通知您文件已构建并显示其路径。在我们的例子中,文件被创建。MathSquareOfSum.dll
2.2 创建 NuGet 包
- 启动 NuGet 包资源管理器。
- 单击创建新包 (Ctrl + N)。将显示一个拆分窗口,其中显示包元数据和包内容。我们需要在后面的部分添加所有依赖项。
- 右键单击包内容部分。显示上下文菜单。
- 单击添加 lib 文件夹。请注意,在Package contents部分中创建了一个新的lib项。
- 右键单击lib中,选择要添加现有文件…。
- 加载上面创建的外部程序集 (.dll)。在我们的例子中,.MathSquareOfSum.dll
- 单击编辑 > 编辑元数据。显示包元数据部分。
- 填写您认为合适的字段以更好地描述您的自定义活动。
- 填写ID字段。在我们的例子中,它可以是“ActivitiesCustomMathFunction”。
注意:NuGet 包ID字段必须包含关键字“Activities”才能显示在 Studio 的“管理包”窗口中。
- 单击文件 > 保存。在我们的例子中,文件被创建。ActivitiesCustomMathFunction.1.0.0.nupkg
- 将文件复制到 UiPath Studio 安装位置 ( )的 Packages 文件夹中。现在可以在 UiPath Studio 中加载包含自定义活动的 NuGet 包。%USERPROFILE%.nuget\Packages

2.3 在 UiPath Studio 中加载 NuGet 包
创建活动并将其打包到 .nupkg 文件后,将其安装到 Studio 中的操作与其他活动类似。了解有关安装软件包的更多信息。


本文详细介绍了如何在UiPath Studio中创建自定义活动,包括使用CodeActivity和NativeActivity的区别,从编写C# DLL到封装为NuGet包的完整过程,以及如何在Studio中加载和使用这些自定义数学运算活动。
423

被折叠的 条评论
为什么被折叠?



