为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 C# 数据工厂中创建一个具有较长延迟的一次性管道运行

如何在 C# 数据工厂中创建一个具有较长延迟的一次性管道运行

C#
湖上湖 2023-08-20 14:24:25
我需要触发一个在我的天蓝色数据工厂内构建的管道,其中包含基于我存储在数据库中的文件的某些参数。我的问题是我需要安排这个管道在一定时间(通常是几个小时)后触发一次。这是调度所必需的,我无法通过事件驱动来做到这一点。我正在使用 .NET SDK我已经创建了与数据工厂的连接并创建了计划触发器。我的问题是计划触发器不允许我触发一次然后停止。它需要间隔和停止日期,我尝试将停止日期设置为与开始日期相同,但它给了我“间隔不能超过结束日期”的错误。 for (int x = 0; x < intervals.Count; x++)            {                // Create a schedule trigger                string triggerName = location + deliveryDate+x;                ScheduleTrigger myTrigger = new ScheduleTrigger()                {                    Pipelines = new List<TriggerPipelineReference>()                    {                        // Associate the Adfv2QuickStartPipeline pipeline with the trigger                        new TriggerPipelineReference()                        {                            PipelineReference = new PipelineReference(pipelineName),                            Parameters = pipelineParameters,                        }                    },                    Recurrence = new ScheduleTriggerRecurrence()                    {                        StartTime = intervals[x],                        TimeZone = "UTC",                        EndTime = intervals[x],                        Frequency = RecurrenceFrequency.Day                    }                };                // Now, create the trigger by invoking the CreateOrUpdate method                triggerResources.Add(triggerName,new TriggerResource()                {                    Properties = myTrigger                });            }我无法进行管道运行,因为我无法在一定的延迟(例如 2 小时)后进行运行,如果可能的话,我只会创建延迟的管道运行...我已经尝试了所有方法,例如将频率留空,将其更改为每种可能性,甚至使用不同的触发器类,例如翻滚和事件。
查看完整描述

1 回答

?
鸿蒙传说

TA贡献1865条经验 获得超7个赞

有一个简单粗暴的解决方案。创建一个带有整数类型参数的新管道。管道中的第一个活动将是等待活动。使用该参数设置等待活动应持续多长时间。管道中的第二个活动将是执行管道活动,它依赖于等待活动,并将触发您真正想要运行的管道。

该解决方案允许您选择等待多长时间,然后执行您想要运行的实际管道。我认为等待活动以秒为单位,因此您需要进行一些算术运算。不过,由于您可以手动触发,所以这应该不是问题。


查看完整回答
反对 回复 2023-08-20
  • 1 回答
  • 0 关注
  • 81 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信