Электронная почта не отправляется с сервера в asp.net - PullRequest
0 голосов
/ 22 января 2019

краткое описание ....

У меня есть приложение, которое имеет несколько разных страниц, одна страница отправляет пользователю новый пароль, а другая страница, которая создает новую учетную запись и отправляет пользователю его имя пользователя, пароль и ссылку активации и две PDF-файлы ...

Проблема ... При локальном тестировании с двух отдельных страниц обе работают нормально и отправляют электронные письма, как и ожидалось.

Теперь, когда я загрузил свое приложение на сервер, я проверяю то же самое, но отправляет пользователю только новое электронное письмо с паролем, а не другое электронное письмо на странице создания нового пользователя ... Действительно странно ... У меня есть попробовал приложение на двух разных серверах, опять же с тем же результатом. только пароль по электронной почте отправляет пользователю ... Он работал, но потом вдруг перестал работать .. Я не понимаю, почему ...

Я проверил настройки smtp в iis, и все в порядке .. Я просто не понимаю, как он может отправлять оба письма локально, но только одно из писем на сервере? у кого-нибудь есть склонность к проблеме ..? вот мой код ...

 private void SendActivationEmail(string password, DataTable td)
        {
            try
            {
                string activationCode = Guid.NewGuid().ToString();
                this.InsertActivation.UpdateParameters["VendorName"].DefaultValue = this.DropDownList1.SelectedValue;
                this.InsertActivation.UpdateParameters["ActivationCode"].DefaultValue = activationCode;
                this.InsertActivation.Update();

                using (StringWriter sw = new StringWriter())
                {
                    using (HtmlTextWriter hw = new HtmlTextWriter(sw))
                    {
                        StringBuilder sb = new StringBuilder();
                        sb.Append("<table width='100%' cellspacing='0' cellpadding='2'>");
                        sb.Append(
                            "<tr><td align='center' style='background-color: #18B5F0' colspan = '2'><b>Congleton Vendor Declaration</b></td></tr>");
                        sb.Append("<tr><td colspan = '2'></td></tr>");
                        sb.Append("<tr><td><b>Company Name: </b>");
                        sb.Append(this.DropDownList1.SelectedValue);
                        sb.Append("</td><td><b>Date: </b>");
                        sb.Append(DateTime.Now);
                        sb.Append(" </td></tr>");
                        sb.Append(" </td></tr>");
                        sb.Append("<tr><td colspan = '2'><b></b> ");
                        sb.Append(td);
                        sb.Append("</td></tr>");
                        sb.Append("</table>");
                        sb.Append("<br />");
                        sb.Append("<table border = '1'>");
                        sb.Append("<tr>");
                        sb.Append(string.Empty);
                        foreach (DataColumn column in td.Columns)
                        {
                            sb.Append("<th style = 'background-color: #D20B0C;color:#ffffff'>");
                            sb.Append(column.ColumnName);
                            sb.Append("</th>");
                        }

                        sb.Append("</tr>");
                        foreach (DataRow row in td.Rows)
                        {
                            sb.Append("<tr>");
                            foreach (DataColumn column in td.Columns)
                            {
                                sb.Append("<td>");
                                sb.Append(row[column]);
                                sb.Append("</td>");
                            }

                            sb.Append("</tr>");
                        }

                        sb.Append("</table>");
                        StringReader sr = new StringReader(sb.ToString());
                        Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 0f);
                        HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
                        using (MemoryStream memoryStream = new MemoryStream())
                        {
                            PdfWriter writer = PdfWriter.GetInstance(pdfDoc, memoryStream);
                            pdfDoc.Open();
                            htmlparser.Parse(sr);
                            pdfDoc.Close();
                            byte[] bytes = memoryStream.ToArray();
                            memoryStream.Close();
                            MailMessage mm = new MailMessage();
                            mm.To.Add(
                                new MailAddress(this.NewEmail.Text)); ////this needs to be changed to sourcing dept email
                            mm.From = new MailAddress(ConfigurationManager.AppSettings["DefaultEmail"]);
                            mm.Sender = new MailAddress(ConfigurationManager.AppSettings["DefaultEmail"]);
                            mm.Subject = "Account Activation";
                            string body =
                                "This is an automatically generated e-mail. Please do not reply to this message.";
                            body += "<br /><br />To";
                            body += "<br /><b>" + this.DropDownList1.Text.Trim() + ".</b>";
                            body +=
                                "<br /><br />In line with our digitilisation roadmap we are changing the process for our annual Country of Origin Declaration, "
                                + "this e-mail is the start of a more automated process which we hope you will find easier to use.";
                            body +=
                                "<br /><br />With this new process please ensure you have logged on and updated your information by"
                                + " <font color=\"red\">January 26th, 2019.</font> The link will not be available beyond this date.";

                            body += "<br /><br />Please keep your credentials safe";
                            body += "<br /><br />*****************************************";
                            body += "<br /><br />Username :  " + this.UserName + string.Empty;
                            body += "<br /><br />Password :  " + password + string.Empty;
                            body += "<br /><br />*****************************************";
                            body += "<br /><br />Please click the following link to activate your account";
                            body += "<br /><a href = '" + this.Request.Url.AbsoluteUri.Replace(
                                        "Congl/IndividualMail.aspx",
                                        "Activation.aspx?ActivationCode=" + activationCode) + "'>Declaration</a>";
                            body += "<br /><br />Should you have any issues please contact myself or Izzy beacham. ";
                            body += "<br />We would appreciate your feedback.";
                            body += "<br /><br />With Best Regards,";
                            body += "<br />Janet rinda";
                             body +=
                                "<br /> ";
                            body +=
                                "<br /><br />This communication contains information which is confidential and may also be privileged. It is for the exclusive use of the addressee. "
                                + "If you are not the addressee please note that any distribution, reproduction, copying, publication or use of this communication or the information is prohibited. If you have received this communication in error, please contact us immediately and also delete the communication from your computer.";
                            body +=
                                "<br /><br /><b>Important notice: This e-mail and any attachment thereof contain corporate proprietary information. "
                                + "If you have received it by mistake, please notify us immediately by reply e-mail and delete this e-mail and its attachments "
                                + "from your system. Thank you.</b>";
                            mm.Body = body;
                            mm.Attachments.Add(new Attachment(new MemoryStream(bytes), "Declaration.pdf"));
                            mm.Attachments.Add(new Attachment(this.Server.MapPath("~/VendorHelpPage.pdf")));
                            mm.IsBodyHtml = true;
                            SmtpClient smtClient = new SmtpClient();
                            smtClient.DeliveryMethod = SmtpDeliveryMethod.Network;
                            try
                            {
                                smtClient.Send(mm);
                            }
                            catch (Exception ex)
                            {
                                this.ErrMsg = App.App.HandleError(MethodBase.GetCurrentMethod(), ex, string.Empty);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                this.ErrMsg = App.App.HandleError(MethodBase.GetCurrentMethod(), ex, string.Empty);
            }
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...