Предполагая, что значение, которое вы хотите передать в задание, доступно вам при регистрации заданий в планировщике (например, параметры командной строки), вы можете сделать что-то вроде этого:
static void ServiceSetup(SchedulingService service)
{
service.Hourly().Run(() => new MyJob("literal"));
service.Daily().Run(() => new MyJob(_field));
}
Используя sexyлямбда-синтаксис, вы только что определили две однострочные функции, каждая из которых создает один и тот же класс задания с использованием разных параметров конструктора.
В качестве альтернативы, вы можете позволить контейнеру IoC создавать экземпляры ваших заданий с помощью любых аргументов конструктора и / или сервисов, которые онитребуют.Если вы не понимаете, о чем я сейчас говорю, вы, вероятно, захотите придерживаться первого предложения:)