Настройка ADOJobStore с Quartz.net

Как настроить магазин вакансий с Quartz.net. Учебник, который есть на сайте, мне не поможет.

На этой странице есть шаги http://quartznet.sourceforge.net/tutorial/lesson_9.html Я не могу понять, как установить это

org.quartz.jobStore.type = Quartz.Impl.AdoJobStore.JobStoreTX, Quartz 

Спасибо


person acadia    schedule 21.09.2009    source источник
comment
Здесь есть дополнительная информация об этом: stackoverflow.com/questions/3821804/ado-net-with-quartz-net/   -  person Adam Seabridge    schedule 14.02.2014


Ответы (1)


Вот адаптированный пример программной конфигурации из примера 13 Quartz.NET:

NameValueCollection properties = new NameValueCollection();

properties["quartz.scheduler.instanceName"] = "TestScheduler";
properties["quartz.scheduler.instanceId"] = "instance_one";
properties["quartz.jobStore.type"] = "Quartz.Impl.AdoJobStore.JobStoreTX, Quartz";
properties["quartz.jobStore.useProperties"] = "true";
properties["quartz.jobStore.dataSource"] = "default";
properties["quartz.jobStore.tablePrefix"] = "QRTZ_";
// if running MS SQL Server we need this
properties["quartz.jobStore.lockHandler.type"] = "Quartz.Impl.AdoJobStore.UpdateLockRowSemaphore, Quartz";

properties["quartz.dataSource.default.connectionString"] = "Server=(local);Database=quartz;Trusted_Connection=True;";
properties["quartz.dataSource.default.provider"] = "SqlServer-20";

// First we must get a reference to a scheduler
ISchedulerFactory sf = new StdSchedulerFactory(properties);
IScheduler sched = sf.GetScheduler();

Вы также можете добиться того же, используя подход, основанный на файле свойств (файл .config).

Обновление для Quartz 3.1 и более поздних версий

Вы также можете использовать плавный API регистрации Microsoft DI, представленный в Quartz.NET 3.1, если вы используете внедрение зависимостей Microsoft. См. руководство по настройке для подробностей.

person Marko Lahma    schedule 29.09.2009
comment
Марко спасибо за ответ. Я создал все таблицы, но в таблице QRTZ_Triggers столбцы start_Time и End_Time представляют собой большие столбцы int. Как мне указать время начала как 11:30 или 14:25? И после получения экземпляра Scheduler мне нужно перебирать триггеры из базы данных?? или у вас есть пример для этого, пожалуйста - person acadia; 29.09.2009
comment
Вы должны делать все изменения через интерфейс планировщика, вы не должны изменять содержимое таблицы непосредственно в базе данных. Триггеры и сведения о заданиях сохраняются в базе данных, если вы используете JobStoreTX. - person Marko Lahma; 01.10.2009
comment
Марко: Что вы имеете в виду под интерфейсом планировщика? Я скачал решение, но нет проекта с графическим интерфейсом. Решение имеет два проекта библиотеки классов, консольное приложение и службу Windows. Насколько я могу судить, консоль просто запускает тот же процесс, что и служба. Спасибо за вашу помощь в этом. - person ; 27.11.2009
comment
Я пытаюсь понять, как получить код из ClusterExample.cs из примера 13 в файл конфигурации для моего Quartz Server, поэтому нет программной настройки, и я не могу понять это. Это вообще возможно? - person Snowy; 02.12.2010
comment
Вы должны иметь возможность перечислить все эти свойства, используя раздел ‹quartz› в файле конфигурации и используя стандартный шаблон ‹add key=key-for-property value=value-for-property /›. Тогда вам вообще не нужна программная конфигурация. - person Marko Lahma; 02.12.2010