Как я могу сделать сервис, который отправляет почту каждые 5 минут? - PullRequest
1 голос
/ 22 сентября 2010

Hy,

У меня есть программа на c #, которая отправляет электронные письма на SMTP-сервер GMail, и я хочу создать службу или что-то еще, что отправляет эти электронные письма каждые 5 минут.

Кто-нибудь знает, как я могу сделать это с помощью c # и asp.net?

Ответы [ 4 ]

2 голосов
/ 22 сентября 2010

Два варианта, которые приходят на ум:

  1. Написать службу Windows. Запустите таймер, который срабатывает каждые пять минут, и выполняйте свою работу там.

  2. Настройте запланированное задание Windows («Планировщик заданий» в Vista / Win7) для запуска каждые пять минут и запуска приложения.

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

2 голосов
/ 22 сентября 2010

Возможно, вы захотите взглянуть на Quartz.NET - планировщик платформы .NET для планирования заданий, которые отправляют электронные письма через Quartz через равные промежутки времени.

1 голос
/ 22 сентября 2010

Сайты не должны иметь состояния, поэтому внедрение непрерывного процесса в ASP.NET - плохая идея.Вам нужно либо консольное приложение, которое никогда не выходит, либо служба Windows.Еще более простой способ - использовать планировщик и запустить консольное приложение.Планировщика Windows должно быть достаточно для этого.

0 голосов
/ 22 февраля 2012

Примерно так: http://www.boards.ie/vbulletin/showthread.php?p=52903016

ОП в этом примере хотел обработать файлы XML, но концепция та же

...