Может быть несколько причин для получения времени последнего исполнения для запланированной работы в оптимизированном CMS.
- Выполнить работу по контенту, созданному с момента последнего выполнения
- Следите за тем, чтобы задание фактически выполняет
- Просто потому, что ты можешь
Сначала приведенный ниже код получает данные задания, используя полное имя (имя пространства имен + класс) без жестких значений. Затем читает собственность LastExecution. Это те же данные, которые вы увидите в запланированном обзоре заданий в пользовательском интерфейсе Optimizely CMS.
var scheduledJobRepository = ServiceLocator.Current.GetInstance();
var job = scheduledJobRepository.List()
.Where(x => x.TypeName.Equals(typeof(MyJob).FullName))
.FirstOrDefault();
var lastExecution = job?.LastExecution;
В вашем собственном коде используйте инъекцию зависимости вместо ServiceLocatorесли возможно.
Если вам нужно получить последнее успешное (или неудачное) выполнение работы, вам следует посмотреть на IScheduledJobLogRepository вместо.
Вот и все!
Читайте также

