2013-09-19 2 views
3

У меня есть простой вопрос, который нужно задать .. Кто-нибудь знает, как создать повторяющийся планировщик в ASP.NET MVC 4. Что я пытаюсь построить, является Ирригационная система, что я могу установить дни недели и время, чтобы моя система активировала каждую неделю. Таким образом, пользователь будет выбирать день недели, а также время и продолжительность работы системы. Как сохранить текущие часы, которые запускают систему? .. Должен ли я использовать раскрывающийся список для моих свойств? Хотя было бы неплохо, я не прошу вас написать для меня целую заявку. Простой момент в правильном направлении очень поможет. Проблема с поиском ответов по сети - я действительно не понимаю знать, что искать.Руководство по созданию планировщика в ASP.NET MVC 4

Спасибо заранее ..

+1

http://haacked.com/archive/2011/10/16/the-dangers-of-implementing-recurring-background-tasks-in-asp-net.aspx –

+0

у вас может быть запланированная задача Windows для запуска процесс .. вы можете создать запланированную задачу Windows программно, используя этот http://taskscheduler.codeplex.com/ – Dhaval

ответ

9

Мы используем Quartz.Net именно для этого. Это порт Quartz для Java.

Это очень мощный и довольно легко определить новые рабочие места (что должно быть сделано) и графики (когда это сделать). Новые версии поддерживают планировщик Cron, который поддерживает конфигурацию linux cron, поэтому ее легко начать работу каждый понедельник или каждую пятую часть месяца или каждые 5 минут на определенную дату. Я считаю, что для запланированных задач сложно превзойти эту гибкость.

Мы используем конфигурацию базы данных и службу на сервере (это «работающие часы, которые активируют вещи»). Кроме того, веб-службы используются для настройки планировщика Quartz, а работающая служба изменяется через базу данных (это .. делается Quartz.Net для вас) Все эти вещи поддерживаются хорошо с ним

Некоторые советы, чтобы начать с хрон триггеров:

Прежде всего было бы учебник от http://quartznet.sourceforge.net/tutorial/lesson_1.html уроки 1 - 3 шоу. вы являетесь основными строительными блоками. Урок 9 показывает вам хранилище заданий ADO (для db persistance).

Работа с курком хрон будет работать как этот

ITrigger trigger = TriggerBuilder.Create().WithIdentity(id).StartNow().WithCronSchedule(cronstring).Build(); 
scheduler.ScheduleJob(job, trigger); 

Чтобы дать Вам представление о possibilites в хронах триггера this guide comes handy.

+0

Я также использую Quartz из службы Windows. Его универсальность и разные триггеры позволяют легко планировать задачи. –

+0

После прочтения документации это, вероятно, ответ, который я искал. Знаете ли вы о каком-либо видеоролике или читаете руководства, связанные с Quarz.net, используя cron-конфигурации в asp.net? Спасибо за вашу помощь! – digiShadoe

+0

Я обновил вопрос, чтобы показать вам несколько советов по началу работы – bernhardrusch

3

Друг, вы можете создать планировщик с помощью следующего кода

void Application_Start(object sender, EventArgs e) 
{ 
    System.Threading.Timer _timer = new System.Threading.Timer(
              new TimerCallback(GetProducts)); 

    _timer.Change(0, 51000); // here you can change the start time interval 
} 


static void GetProducts(Object state) 
{ 
    // do something 
} 
2

Для того, чтобы запланированные задач на независимом сервере времени даты и получить подробные отчеты обо всех задачах, вы можете использовать A Trigger как планирование оказание услуг. такие возможности, как приостановка, возобновление или удаление наборов задач с использованием тегов, архивирование и сохранение всех результатов вызова, таких как возможные ошибки, действительно помогут разработчикам независимо от языка программирования.

.Net library также доступен:

//Create 
ATrigger.Client.doCreate(TimeQuantity.Day(), "1", "http://www.example.com/myTask?something", tags); 

Отказ от ответственности: Я был amoung ATrigger строителей. Это абсолютно бесплатная, а не коммерческая цель.

Смежные вопросы