public override void ExecuteTask() { LoadBalance.MaintainLoadBalancingUrls(); //Reset Task SchedulingManager schedulingManager = SchedulingManager.GetManager(); var newTask = new LoadBalanceTask() { Key = this.Key, ExecuteTime = DateTime.UtcNow.AddMinutes(5) }; schedulingManager.AddTask(newTask); schedulingManager.SaveChanges(); }
internal static void CreateMaintainLoadBalancingUrlsTask() { SchedulingManager manager = SchedulingManager.GetManager(); var key = LoadBalanceTask.GuidKey; var existingTasks = manager.GetTaskData().Where(i => i.Key == key).ToList(); if (existingTasks.Count() > 0) { foreach (var task in existingTasks) { manager.DeleteTaskData(task); } manager.SaveChanges(); } existingTasks = manager.GetTaskData().Where(i => i.Key == key).ToList(); if (existingTasks.Count() == 0) { var newTask = new LoadBalanceTask(); //Execution time must be expressed in UTC newTask.ExecuteTime = DateTime.UtcNow.AddMinutes(1); newTask.Key = LoadBalanceTask.GuidKey; manager.AddTask(newTask); manager.SaveChanges(); } }