public void Update(TargetApp targetApp) { _app.Entry <TargetApp>(targetApp).State = EntityState.Modified; var old = GetById(targetApp.Id.ToString()); if (targetApp.Interval != old.Interval) { _scheduler.UnscheduleJob(new TriggerKey(targetApp.Id.ToString())); _scheduler.AddHealthCheckJob(targetApp.Id.ToString(), targetApp.Interval); } if (targetApp.IsDown && !old.IsDown) { _notificationProvider.NotifyAsync(NotifyTypes.Email, $"<strong>{targetApp.Name}</strong> health check endpoint returned status code different from 2##"); } _app.SaveChanges(); }