如何使用NServiceBus安排每天运行的任务

fri*_*ley 5 nservicebus job-scheduling

是否有使用NServiceBus安排任务的优雅方式.我在搜索网络找到了一种方法.NServiceBus是否提供用于调度的内部API.

Sim*_*mon 9

NServiceBus现在内置了这个

从这里http://docs.particular.net/nservicebus/scheduling-with-nservicebus

public class ScheduleStartUpTasks : IWantToRunWhenTheBusStarts
{
    public void Run()
    {
        Schedule.Every(TimeSpan.FromMinutes(5)).Action(() =>
            Console.WriteLine("Another 5 minutes have elapsed."));

        Schedule.Every(TimeSpan.FromMinutes(3)).Action(
                            "MyTaskName",() =>
                            { 
                                Console.WriteLine("This will be logged under MyTaskName’.");
                            });
    }
}
Run Code Online (Sandbox Code Playgroud)

请注意警告

何时不使用它.您可以将计划任务视为一个简单的永无止境的传奇.但是一旦你的任务开始得到一些逻辑(if-/switch-statements),你应该考虑转移到一个传奇.

  • @demoncodemonkey 顺便说一句,是什么阻止了您升级到 v5?如果您想与工程师讨论此事,请随时通过 simon.cropp@particular.net 与我联系 (2认同)