Как создать метод, который будет работать автоматически один раз в день - PullRequest
4 голосов
/ 24 августа 2011

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

Я хочу, чтобы это происходило один раз в день в определенный час.

Каков наилучший подход для такого рода потребностей?

Ответы [ 5 ]

4 голосов
/ 24 августа 2011

Самый простой способ:

Создайте консольное приложение для выполнения задачи и используйте планировщик задач Windows , чтобы запустить его в нужное время и с определенным интервалом.

Выможет также создать Windows Service , но их сложнее развернуть и отладить, чем консольное приложение.

1 голос
/ 24 августа 2011

У вас есть много вариантов, все с плюсами и минусами. Просто назвать несколько:

  • Цикл, который будет поддерживать ваше приложение в фоновом режиме.
  • Агент расписания, который будет запускать ваше приложение один раз в день.
  • Использование планировщика Windows.
  • Другое стороннее (или ваше собственное) приложение для планирования.

Учитывая так мало информации, все, о чем я расскажу, что лучше для вас, не будет стоить байт!

1 голос
/ 24 августа 2011

(сначала проще)

  1. Планирование приложения с помощью планировщика Windows
  2. Реализация службы Windows и использование Quartz .NET для планирования
  3. Внедрите планирование вручную и просто продолжайте работу приложения
1 голос
/ 24 августа 2011

Вариант 1: Вы можете сделать это в своем коде Csharp, используя проверку даты и времени внутри таймера, который срабатывает через регулярный интервал.Этот подход плох, поскольку требует, чтобы ваше приложение работало непрерывно.

Опция 2. Вы можете использовать запланированное задание в своей ОС и запускать приложение в определенный час, чтобы достичь того же самого.Моя компания следит за этим для создания автоматических отчетов

Вариант 3. Вы можете использовать службу Windows. ( Учебник по простой службе окон )

Вот ссылка , который поможет вам решить, выбрать ли запланированное задание или службу Windows.

0 голосов
/ 24 августа 2011

Проверьте это сообщение http://www.codeproject.com/KB/cs/Midnight_Timer.aspx и измените его с полуночи на необходимое время.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...