Имея проблему со знаком плюс, он конвертируется в ASCII после отправки электронной почты - PullRequest
0 голосов
/ 11 февраля 2020

При выполнении следующего кода часть скрипта <script type="application/json+trustpilot"> преобразуется в <script type="application/json&#43;trustpilot">. Если для isBody HTML установлено значение false, знак плюс отображается правильно (то есть не показывает &#43;), но не в формате HTML (который необходим).

У кого-нибудь еще была подобная проблема?

Я делаю это в C# внутри проекта SSIS 2012. Уже перепробовал все форматы кодирования, такие как default, unicode, ...

private void sendEmail(string SendMailTo, string SendMailSubject, string SendMailBody)
{
    string sqldbaEmail = "myemail@mail.com";
    string newSqldbaEmail = "anotheremail@mail.com";

    // email sender hardcoded because cannot send email with other credentials
    MailMessage myHtmlFormattedMail = new MailMessage(sqldbaEmail, newSqldbaEmail, SendMailSubject, "");

    myHtmlFormattedMail.BodyEncoding = System.Text.Encoding.UTF8;

    myHtmlFormattedMail.Body = SendMailBody;

    myHtmlFormattedMail.Bcc.Add(SendMailTo);

    myHtmlFormattedMail.IsBodyHtml = true;

    // Create a SMTP client to send the email
    SmtpClient mySmtpClient = new SmtpClient();
    NetworkCredential basicCredential = new NetworkCredential(sqldbaEmail, "password");

    mySmtpClient.Port = 25;// 587;//2525; // If you want to use a different portnumber instead of the default. Else remove this line.
    mySmtpClient.Host = "smtp.office365.com";
    mySmtpClient.UseDefaultCredentials = false;
    mySmtpClient.Credentials = basicCredential;
    mySmtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
    mySmtpClient.EnableSsl = true;

    // Sends email
    mySmtpClient.Send(myHtmlFormattedMail);
}

enter code here

Спасибо за поиск.

1 Ответ

1 голос
/ 11 февраля 2020

Это помогает?

"Добавление {scripts} {/ scripts} до того, как открывающий тег сохранит код там."

https://forum.cs-cart.com/topic/50034-trustpilot-afs-2/

...