Ответ 1
String body = "Your message : <a href='http://www.example.com'></a>"
m.Body = body;
Я разрабатываю программу для автоматической отправки писем с помощью С#, и я хочу вставить ссылку на веб-сайт на это письмо. Как я могу это сделать?
public bool genarateEmail(String from, String to, String cc, String displayName,
String password, String subjet, String body)
{
bool EmailIsSent = false;
MailMessage m = new MailMessage();
SmtpClient sc = new SmtpClient();
try
{
m.From = new MailAddress(from, displayName);
m.To.Add(new MailAddress(to, displayName));
m.CC.Add(new MailAddress("[email protected]", "Display name CC"));
m.Subject = subjet;
m.IsBodyHtml = true;
m.Body = body;
sc.Host = "smtp.gmail.com";
sc.Port = 587;
sc.Credentials = new
System.Net.NetworkCredential(from, password);
sc.EnableSsl = true;
sc.Send(m);
EmailIsSent = true;
}
catch (Exception ex)
{
EmailIsSent = false;
}
return EmailIsSent;
}
Я хочу отправить ссылку через это письмо. Как добавить его в электронную почту?
String body = "Your message : <a href='http://www.example.com'></a>"
m.Body = body;
Вы можете просто добавить разметку для ссылки в своей переменной body
:
body = "blah blah <a href='http://www.example.com'>blah</a>";
Вам не нужно делать ничего особенного, так как вы указываете, что ваше тело содержит HTML (m.IsBodyHtml = true
).
Внутри тела. Это потребует, чтобы тело было построено как HTML, так что оно может использоваться или может быть использовано для визуализации вашей ссылки. Вы можете использовать что-то вроде StringTemplate для генерации html, включая вашу ссылку.
Для некоторых динамических ссылок поставщики услуг электронной почты не будут отображать вашу ссылку в теле письма, если ссылка не предшествует http (проблемы безопасности) как localhost: xxxx/myPage
m.body = "<a href='http://" + Request.Url.Authority + "/myPage'>click here</a>"