나는이 "거기"할 어떤 서비스인지 모르지만, 당신이 타이머에서 실행되는 Windows 서비스를 작성하는 것입니다 개발한다면 가장 좋은 방법은 10 분마다 말이나 그래서.
SQL 쿼리로 다음 15 분 또는 30 분 내에 오는 데이터베이스 약속을 읽습니다. 데이터가 반환되면 해당 약속에 대한 타이머 틱 이벤트를 통해 적절한 시간에 실행되도록 설정된 해당 레코드 각각에 대해 타이머를 만들 수 있습니다. 타이머가 틱하면 스레드 풀에서 전자 메일을 보내어 전자 메일을 보낼 때 주 스레드가 멈추거나 차단되는 것을 피하고 서비스 응답 속도를 조금만 높입니다.
ASP.NET에서이 "자동화"작업을 수행 할 수 없으며 Windows 서비스는 일정한 간격으로 작업을 수행하는 경우에 적합합니다.이 경우 일정 기간 동안 약속/일정 목록을 가져올 수 있습니다 시간을 보내고 이메일을 보내십시오.
일단 전자 메일을 보내면 다음 타이머 이벤트에서 중복 된 전자 메일이 보내지지 않도록 해당 레코드를 업데이트해야합니다. "SentReminder"와 같은 플래그가 레코드 필드에 설정되어 있습니다 데이터베이스에.
이렇게하는 것이 가장 좋은 방법입니다.