Web Link in a mail is not rendering as link in yahoo
-
20-09-2019 - |
Question
string from = "abc@gmail.com"; string to = "xyz@gmail.com,xyz@yahoo.co.in"; string password="abcxyz";
MailMessage mail = new System.Net.Mail.MailMessage();
mail.To.Add(to);
mail.From = new MailAddress(from, "Check Email", System.Text.Encoding.UTF8);
mail.Subject = "This is a test mail";
mail.SubjectEncoding = System.Text.Encoding.UTF8;
mail.Body = "<html><body><h1>My Message</h1><br><a href=www.stackoverflow.com>stackoverflow</a></body></html>";
mail.IsBodyHtml = true;
SmtpClient client = new SmtpClient();
client.Credentials = new System.Net.NetworkCredential(from,password);
client.Port = 587;
client.Host = "smtp.gmail.com";
client.EnableSsl = true;
client.Send(mail);
This code successfully sents the mail. When i look at my gmail, the "stackoverflow" link renders as link and i was able to navigate to the respective page, but in yahoo i don't find any link instead just the text "stackoverflow" appears.
Solution
<a href="http://www.stackoverflow.com">stackoverflow</a>
You forgot the http://
OTHER TIPS
Perhaps Yahoo! Mail is less forgiving about unquoted HTML attribute values, try this instead:
mail.Body
= "<html><body><h1>My Message</h1><br><a href=\"http://www.stackoverflow.com\">stackoverflow</a></body></html>";
Try
<a href="http://www.stackoverflow.com/"> stackoverflow</a>
Try specifying a valid html:
mail.Body = "<html><body><h1>My Message</h1><br><a href=\"http://www.stackoverflow.com\">stackoverflow</a></body></html>";
When sending bulk of html content as body, http do matter. This is the code in my config file troubled me. When i added http, it works fine, without http, yahoo fails.
<tr>
<td colspan="2" onClick="#stackoverflow#" style="cursor:hand;">
<center>
<b>
<a href='http://www.stackoverflow.com' style="color:#1C0693;text-decoration:none;">stackoverflow</a>
</b>
</center>
</td>
</tr>