0

我有一些代码可以在我的 APP_CODE 目录中发送电子邮件:

将消息暗淡为 Mail.MailMessage = New 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 中继的问题;如果是,有谁知道我应该告诉我的服务器管理员监控的事情?

编辑

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

4

1 回答 1

0

恕我直言,您的第一步应该是将问题隔离到代码或交换服务器。您可以通过在代码中添加一些日志记录来做到这一点。

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

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

在您开始深入研究问题之前隔离这一事实肯定会为您节省一些时间来查找问题。

于 2012-08-06T21:14:01.773 回答