多行正文的邮件正文

Mail body with multiple line body

我想使用 C# 发送电子邮件

            SmtpClient client = new SmtpClient(_smtp, int.Parse(_port));
            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            client.EnableSsl = bool.Parse(_enableSsl);
            client.UseDefaultCredentials = false;
            client.Credentials = new NetworkCredential(APIKey, SecretKey);
            MailMessage mail = new MailMessage();
            mail.From = _from;
            mail.To.Add(_to);
            mail.Subject = _subject;
            mail.Body = _body;
            if(Uri.IsWellFormedUriString(url, UriKind.Absolute)) mail.Body += "<br/>" + url + "<br/>" + "Cordialement";
            mail.IsBodyHtml = false;

            client.Send(mail);

邮件已发送,但其正文作为一行收到。

那么我该如何解决这个问题?

因为您的代码中有以下行:

mail.Body += "<br/>" + url + "<br/>" + "Cordialement";

我猜你 mail.Body 的其余部分也包含 HTML。

如果您将 HTML 放在 MailMessage 的正文中,您需要将 IsBodyHtml 设置为 true - 您已将其设置为 false。

mail.IsBodyHtml = true;