2012-08-06 71 views
0

电子邮件,我有一些代码来发送电子邮件在我的App_Code目录:间歇性问题 - 重复发送

昏暗的消息Mail.MailMessage =新Mail.MailMessage(strFrom,strSendTo)

Dim SMTP_Client As Mail.SmtpClient = New Mail.SmtpClient("mymailserver.mycompany.com") 

    'Send email 
    Try 
     message.Priority = Mail.MailPriority.Normal 
     message.IsBodyHtml = True 
     message.Subject = strSubject 
     message.Body = strBody & vbCrLf & vbCrLf & vbCrLf & vbCrLf & "THIS IS AN AUTOMATED MESSAGE. DO NOT REPLY." 
     SMTP_Client.Send(message) 

的问题是一些用户会间歇性地收到重复的电子邮件。它似乎不是一个代码问题。当我浏览代码时,我可以看到发送电子邮件的电话只会触发一次。我想也许这个代码是在Page_Load中被调用的,但是通过代码逐步显示Page_Load在我的按钮点击事件之前触发。

我想知道这是不是我们的SMTP中继上的问题;如果是这样,有没有人知道我应该告诉我的服务器管理员监控的事情?

编辑

有一些代码,发送电子邮件之前检查两个表单字段的值。第二个字段在页面加载期间更新,我可以看到如果这些值相同,则不会触发电子邮件。当我做出改变时,电子邮件会被发送,但我总是只有一个。

+2

你确定用户没有双击该按钮吗?还有很多人这样做... – 2012-08-06 20:23:30

+0

嗨E.J. - 积极的是没有发生。我已经点击了两次按钮,它会在我的开发站点上发送一封电子邮件给我。那是我想到的第一件事。 – Tim 2012-08-06 20:32:34

回答

0

恕我直言,你的第一步应该是将问题隔离到代码或交换服务器。您可以通过向代码添加一些日志记录来完成此操作。

每次通过代码发送电子邮件时,请记录此事件以及所有相关信息(例如:发送日期,电子邮件地址,发送电子邮件的过程等)。

现在,当您收到重复的电子邮件时,您可以检查您的日志以查看代码是否多次发送电子邮件。

在开始深入研究问题之前,将这一事实分离出来,一定会为您节省一些时间来发现问题。

+0

原来是旧的Exchange服务器。已知服务器间歇地发送多份电子邮件(重复,有时甚至一式三份)。将它更新到我们的新硬件可能会解决问题。 – Tim 2012-08-07 14:45:33