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.

Was it helpful?

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>
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top