Sto usando il codice qui sotto per generare un email. Per qualche motivo, a caso invierà un'e-mail duplicata. Non succede sempre, solo un paio di volte al mese. Vedi qualcosa con il mio codice che potrebbe causare questo? Viene attivato quando l'utente fa clic su un pulsante di invio sulla pagina. C'è qualcosa che posso aggiungere a questo per evitare che ciò accada? TIASystem.Net.Mail New MailMessage invia in modo casuale e-mail duplicate?
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
immagine Codice Button:
<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" />
Un'ipotesi, se l'utente preme il pulsante Indietro del browser o aggiorna la pagina (dopo l'invio della posta), attiva nuovamente il postback? –
Potrebbe anche essere la sessione. Quando si imposta 'Session [" EmailAddress "]', c'è comunque che l'e-mail dell'utente sia stata aggiunta più di una volta? – Kramb
Penso che attiverà un altro post se la pagina viene aggiornata. È quello dove aggiungerei se non è un postback? – user1342164