我们公司有一个订单页面,其背后的代码中包含使用SmtpClient类发送订单的电子邮件确认。它工作正常。问题是当我们的Exchange服务器出现故障时,电子邮件发送事件错误。我们抓住它并记录它并以另一种方式通知客户。这通常是由我们的备份服务器运行引起的,这会不时导致电子邮件发送问题。我们怎样才能让电子邮件每30分钟再试一次?我应该注意到我们的所有代码都在我们的页面中,因此我们考虑创建一个单独的电子邮件类,该页面可以在后台调用和处理请求,并允许页面完成加载。任何建议将不胜感激。
答案 0 :(得分:1)
你可以有一个计时器,每当电子邮件无法发送,检查并尝试每三十分钟发送一次电子邮件时启动,如果它能够发送,计时器就会停止。但是,如果有大量电子邮件,这可能会对您的系统造成负担。
EDIT。
您可以将失败的电子邮件添加到列表或数据库中。您可以在代码中添加一个功能,或者创建一个新应用程序来检查失败的电子邮件的时间和上次尝试的发送时间。如果> = 30分钟,请尝试再次发送这些电子邮件