sdk
latest
false
- Overview
- Custom activities
- Understanding the Activity Project Structure
- Writing the activity code
- Configuring the activity metadata
- Building the solution and creating the NuGet package
- Using the activity in a Studio project
- Testing your activity
- Creating Activities With Code (Legacy)
- Migrating Activities to .NET 6
- Release Notes
- Building Workflow Analyzer Rules
- Building Activities Project Settings
- Creating Custom Wizards
- Prioritize Activities by Scope
- UiPath.Activities.Api.Base
- UiPath.Studio.Activities.Api
- UiPath.Studio.Activities.Api.Activities
- UiPath.Studio.Activities.Api.BusyService
- UiPath.Studio.Activities.Api.ExpressionEditor
- UiPath.Studio.Activities.Api.Expressions
- UiPath.Studio.Activities.Api.Licensing
- UiPath.Studio.Activities.Api.Mocking
- UiPath.Studio.Activities.Api.ObjectLibrary
- UiPath.Studio.Activities.Api.PackageBindings
- UiPath.Studio.Activities.Api.ProjectProperties
- UiPath.Studio.Activities.Api.ScopedActivities
- UiPath.Studio.Activities.Api.Settings
- UiPath.Studio.Activities.Api.Wizards
- UiPath.Studio.Activities.Api.Workflow
- UiPath.Studio.Api.Controls
- UiPath.Studio.Api.Telemetry
- UiPath.Studio.Api.Theme
- Robot JavaScript SDK
- Triggers SDK
Developer Guide
Last updated Oct 25, 2024
Building the solution and creating the NuGet package
The UiPath.Activities.Template includes a packaging project that creates a NuGet package every time the solution is built. Alternatively, you can manually create a package using NuGet Package Explorer.
It is important to configure the packaging project to ensure the correct metadata is added to the package. To do this, open the packaging CSPROJ file and configure the properties described in the following table.
Property | Description |
---|---|
GeneratePackageOnBuild | Whether to generate a package when building the solution |
VersionBuild | Build number |
VersionRevision | Revision number |
PackageId | Name of the package |
VersionPrefix Condition="'$(Configuration)' == 'Release'" | Version prefix for a stable release |
VersionPrefix Condition="'$(Configuration)' == 'Debug'" | Version prefix for a debug release |
Authors | Author of the package, for example your team or organization. Do not add UiPath as the package author. |
PackageTags | Tags to display for the package |
Description | Package description |
PackageIconUrl | URL of the icon to add to the package |
PackageOutputPath | Folder where to create the package |
TargetsForTfmSpecificBuildOutput | What to include in the build output |
The properties for the sample Calculator activity look as
follows:
<PropertyGroup>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<VersionBuild>$([System.DateTime]::UtcNow.DayOfYear.ToString("F0"))</VersionBuild>
<VersionRevision>$([System.DateTime]::UtcNow.TimeOfDay.TotalMinutes.ToString("F0"))</VersionRevision>
<PackageId>UiPath.MyCustom.Activities</PackageId>
<VersionPrefix Condition="'$(Configuration)' == 'Release'">1.0.0</VersionPrefix>
<VersionPrefix Condition="'$(Configuration)' == 'Debug'">1.0.$(VersionBuild)-dev.$(VersionRevision)</VersionPrefix>
<Authors>MyCompany</Authors>
<PackageTags>UiPathActivities</PackageTags>
<Product>UiPath.MyCustom.Activities</Product>
<PackageIconUrl>https://download.uipath.com/UI_icon.png?web</PackageIconUrl>
<PackageOutputPath>..\Output\Activities\Packages\</PackageOutputPath>
<TargetsForTfmSpecificBuildOutput>AddDlls</TargetsForTfmSpecificBuildOutput>
<ProduceReferenceAssembly>False</ProduceReferenceAssembly>
</PropertyGroup>
<PropertyGroup>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<VersionBuild>$([System.DateTime]::UtcNow.DayOfYear.ToString("F0"))</VersionBuild>
<VersionRevision>$([System.DateTime]::UtcNow.TimeOfDay.TotalMinutes.ToString("F0"))</VersionRevision>
<PackageId>UiPath.MyCustom.Activities</PackageId>
<VersionPrefix Condition="'$(Configuration)' == 'Release'">1.0.0</VersionPrefix>
<VersionPrefix Condition="'$(Configuration)' == 'Debug'">1.0.$(VersionBuild)-dev.$(VersionRevision)</VersionPrefix>
<Authors>MyCompany</Authors>
<PackageTags>UiPathActivities</PackageTags>
<Product>UiPath.MyCustom.Activities</Product>
<PackageIconUrl>https://download.uipath.com/UI_icon.png?web</PackageIconUrl>
<PackageOutputPath>..\Output\Activities\Packages\</PackageOutputPath>
<TargetsForTfmSpecificBuildOutput>AddDlls</TargetsForTfmSpecificBuildOutput>
<ProduceReferenceAssembly>False</ProduceReferenceAssembly>
</PropertyGroup>
Make sure you test the project for errors before attempting to build it. To build the solution, select Build Solution from the Build menu.
- The default location where solutions are saved is
%UserProfile%\source\repos
. - The default location where NuGet
packages are saved is
%UserProfile%\source\repos\<Solution_Folder>\<Solution>\Output\Activities\Packages
.