2010-03-22 5 views
1

내 시스템에는 계약이 거의 만료되었다는 경고를 다른 부서에 알리는 전자 메일 알림을 보내는 기능이 있습니다.전자 메일 알림 보내기 : MVC 프로젝트

내 mvc 프로젝트를 통해 전자 메일을 보낼 제안이 있지만 System.web.mail을 사용하려고하지만 smtp는 동의하지 않습니다. 이메일을 보내기 위해 무엇인가를 준비해야합니까?

제안 해 주셔서 감사합니다.

+0

당신은'System.Net.Mail'를 사용해야합니다. – Steven

답변

0

SMTP 서버를 사용할 수있는 경우 .net 프레임 워크의 일부인 SMTP 클라이언트를 사용할 수 있습니다.

Global.asax.cs의 Application_Start 메소드에서 데몬을 설정할 수 있습니다.이 메소드는 만료 계약이 있는지 매일 확인한 다음 만료 예정인 계약과 관련된 SMTP 이메일을 보냅니다. 이 같은

뭔가 적합 할 수 있습니다 : System.Web.Mail`가 사용되지 않습니다`이후

// this is System.Threading.Timer 
_timer = new Timer(x => 
        { 
         var listOfExpiringContracts = GetContractsThatAreAboutToExpire(); 
         if (listOfExpiringContracts.Count > 0) 
         { 
          SendEmailToOtherDepartmentRegardingContractsThatAreAboutToExpire(listOfExpiringContracts); 
         } 
        }, null, GetNextTimeToCheckForExpiringContracts().Subtract(DateTime.Now), TimeSpan.FromDays(1)); 
0

계약 만료는 HTTP 요청이 아니라 시간의 함수가 될 것입니다.

MVC 응용 프로그램 외부에서 처리해야합니다 (모델이 빌드 된 클래스를 거의 재사용해야 함).