studio
latest
false
重要 :
新发布内容的本地化可能需要 1-2 周的时间才能完成。
UiPath logo, featuring letters U and I in white

Studio 用户指南

上次更新日期 2025年3月24日

调用编码源文件

使用此工作流在低代码工作流中调用编码源文件。在此示例中,我们在 TimeSpanHelper.cs 编码源文件中创建一个名为 TimeSpanHelper 的类。此类根据指定的范围生成随机时间跨度。要将此类集成到低代码工作流中,我们将使用“调用工作流文件”活动,然后根据用例使用其他低代码活动。
  1. 创建编码源文件。在此示例中,将其命名为 TimeSpanHelper.cs
  2. 在已编码的源文件中,创建一个名为“TimeSpanHelper”的公共类。
    1. TimeSpanHelper 类中,声明一个名为 _random 的私有静态随机对象,以生成随机值。
       [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]private static Random _random = new Random();
    2. 声明一个名为 _lockObj 的私有静态对象以保护线程,并同时处理多个线程。
       [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]private static object _lockObj = new object();
    3. 实现名为 GetRandomTimeSpanBetween 的公共静态方法,该方法采用两个整数参数:lowerBoundMsupperBoundMs
       [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]public static TimeSpan GetRandomTimeSpanBetween(int lowerBoundMs, int upperBoundMs)
          {
    4. 使用带有 _lockObj 的锁定语句来保护此线程,同时同时处理多个线程。
       [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]lock (_lockObj)
            {
    5. 在锁定块中,使用 _random.Next 生成一个随机整数值,并将 lowerBoundMsupperBoundMs 作为参数传递。
       [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]var ms = _random.Next(lowerBoundMs, upperBoundMs);
    6. 使用TimeSpan.FromMilliseconds将生成的随机值转换为TimeSpan对象,并使用以下命令直接从方法中返回此值:
       [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]return TimeSpan.FromMilliseconds(ms);
    根据这些步骤,最终代码应如下所示:
     [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]  public class TimeSpanHelper
      {
        private static Random _random = new Random();
        private static object _lockObj = new object();
    
        public static TimeSpan GetRandomTimeSpanBetween(int lowerBoundMs, int upperBoundMs)
        {
          lock (_lockObj)
          {
            var ms = _random.Next(lowerBoundMs, upperBoundMs);
            return TimeSpan.FromMilliseconds(ms);
          }
        }
      }
  3. 创建低代码工作流。在此示例中,将其命名为 WorkflowUsingCodeSourceFile
  4. 添加“日志消息”活动,以输出 2 到 4 秒之间的随机时间跨度。
  5. 在“消息”字段中,输入项目的名称,调用已编码的源文件,然后调用 GetRandomTimeSpanBetween 方法。
    在下面的示例中,CodedWorkflowInteroperability 是项目的 名称。
     CodedWorkflowInteroperability.TimeSpanHelper.GetRandomTimeSpanBetween(2000, 4000)CodedWorkflowInteroperability.TimeSpanHelper.GetRandomTimeSpanBetween(2000, 4000)

此页面有帮助吗?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath Logo White
© 2005-2025 UiPath。保留所有权利。