我使用下面的代碼來生成電子郵件。出於某種原因,它會隨機發送重複的電子郵件。它不會一直髮生,只是一個月幾次。你有看到我的代碼可能會導致這種情況嗎?當用戶點擊頁面上的提交按鈕時會觸發它。有什麼我可以添加到此以防止這種情況發生? TIASystem.Net.Mail新的MailMessage隨機發送重複的電子郵件?
Try
Dim Attachment As String
Attachment = path + myUniqueFileName
Dim mailMessage As MailMessage = New MailMessage
mailMessage.From = New MailAddress("[email protected]")
mailMessage.Subject = "Report " + " " + myUniqueFileName
mailMessage.IsBodyHtml = True
mailMessage.To.Add(New MailAddress(Session("EmailAddress")))
mailMessage.Attachments.Add(New Attachment(Attachment))
mailMessage.Body = "Attached is your report"
Dim smtp As SmtpClient = New SmtpClient
smtp.Host = "mail.net"
Dim NetworkCred As System.Net.NetworkCredential = New System.Net.NetworkCredential
smtp.Credentials = New NetworkCredential("test", "test")
smtp.UseDefaultCredentials = False
smtp.Send(mailMessage)
Catch ex As Exception
Dim message As String = ex.ToString
Dim sb As New System.Text.StringBuilder()
sb.Append("<script type = 'text/javascript'>")
sb.Append("window.onload=function(){")
sb.Append("alert('")
sb.Append(message)
sb.Append("\n")
sb.Append(String.Format("{0:f2}", Convert.ToDouble(TotalAmount)))
sb.Append("')};")
sb.Append("</script>")
ClientScript.RegisterClientScriptBlock(Me.GetType(), "alert", sb.ToString())
End Try
圖片按鈕代碼:
<asp:ImageButton ID="cmdFinish" runat="server" Height="38px" ImageUrl="~/Images/Finish.png" Width="99px" UseSubmitBehavior="false" OnClientClick="this.disabled = true; this.value = 'Sending...';" Text="Send" />
只是猜測,如果用戶按下瀏覽器的按鈕或刷新頁面(郵件發送後),這是否會再次觸發回發? –
它也可以是會話。當您設置Session [「EmailAddress」]時,是否有用戶的電子郵件被添加多次? – Kramb
我認爲如果頁面被刷新,它會觸發另一個帖子。如果不是回發,那我會添加嗎? – user1342164