我想使用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);
邮件已发送,但其正文是作为一行接收的。
那么如何解决这个问题?
答案 0 :(得分:1)
由于您的代码中包含以下行:
mail.Body += "<br/>" + url + "<br/>" + "Cordialement";
我猜你的mail.Body
的其余部分也包含HTML。
如果您将HTML放在MailMessage
的正文中,则需要将IsBodyHtml
设置为true
- 您将其设置为false。
mail.IsBodyHtml = true;