System.Net.Mail.MailMessage/System.Net.Mail.SmtpClient Отправка повторяющихся писем

В приведенном ниже коде используется System.Net.Mail.MailMessage/System.Net.Mail.SmtpClient для отправки файлов по электронной почте из приложения ASP.NET/C# 3.5SP1, работающего на IIS7 в Windows 2008R2. Несмотря на то, что мы не меняли код более 3 лет, недавно он начал рассылать повторяющиеся электронные письма. Например, если [email protected] — это currentVendor.Email, [email protected] получит 2 совершенно одинаковых отдельных письма. Любые идеи? Могло ли это быть вызвано Центром обновления Windows?

Vendor currentVendor = Vendor.GetCurrent();
string POLocation = Vendor.GetPOLocation();
    #if !DEBUG
                                    MailMessage mailer = new MailMessage("[email protected]", "[email protected]");
                                    string[] addresses = currentVendor.Email.Split(new char[] { ';', ',' });
                                    foreach (string recip in addresses)
                                    {
                                        mailer.To.Add(recip.Trim());
                                    }
    #else
                                MailMessage mailer = new MailMessage("[email protected]", "[email protected]");
    #endif
                                mailer.Subject = String.Format("{0} V2 Purchase Orders - {1}", currentVendor.Name, DateTime.Today.ToShortDateString());
                                mailer.IsBodyHtml = true;
                                mailer.Body = "Please find attached..... <br/>" +
                                              "This email is system generated. If you have any trouble please, contact us";
                                mailer.Attachments.Add(new Attachment(POLocation));

                                SmtpClient mailClient = new SmtpClient();
                                mailClient.Send(mailer);

Заранее спасибо!


person salesforcedevinar    schedule 18.12.2014    source источник


Ответы (1)


Попробуйте проверить, если этот код:

Vendor currentVendor = Vendor.GetCurrent();

не возвращает повторяющиеся адреса электронной почты?

Существует только один вызов метода MailClient.Send():

mailClient.Send(mailer);

Но убедитесь, что вы не вызываете весь фрагмент кода, который вы вставили более одного раза!

person msporek    schedule 18.12.2014
comment
msporek, Спасибо, но я уверен, что почтовые адреса не дублируются и что мы вызываем mailClient.Send(..) только один раз. - person salesforcedevinar; 18.12.2014