c# 编程实现发email , 用gmail邮箱

1 : 加这两个 using

using System.Net.Mail;

using System.Net;

2 : 发送人 和 收件人的设置

            SmtpClient client = new SmtpClient("smtp.gmail.com", 587)
            {
                Credentials = new NetworkCredential("myEmailAddress@gmail.com", "myPassword"),
                EnableSsl = true
            };


            MailAddress from = new MailAddress(@"myEmailAddress@gmail.com", "myName");
            MailAddress to = new MailAddress(@"whereToSend@com.cn", "receiverName");
            MailMessage myMail = new System.Net.Mail.MailMessage(from, to);
// set subject and encoding
myMail.Subject = "Auto send email of route 's perfermance at sometime ";
myMail.SubjectEncoding = System.Text.Encoding.UTF8;
//如果要添加抄送
MailAddress copy = new MailAddress("someone@.com.cn");
myMail.CC.Add(copy);

3 : 写邮件正文 , 例子带一个表格 ,注意 换行用 <br/> , 而不是 "\r\n" , 如果用后者, 在outlook显示不出换行的效果。

            DataTable table = new DataTable();
            table.Columns.Add("ownerVendor", typeof(string));
            table.Columns.Add("priority", typeof(string));
            table.Columns.Add("aditionalParameter", typeof(string));



            table.Rows.Add("JJTEL", "3000", "30");
            table.Rows.Add("ARCA", "2000", "5");
            table.Rows.Add("SHINETOWN", "2000", "5");


            myMail.Body = @"Hi : " + "<br/>" + " below is ." + "<br/>" + @"<table 1"">
            <tr>
                <td >
                    &nbsp;</td>
                <td>
                    ASR</td>
                <td>
                    ACD</td>
            </tr>";

            foreach (DataRow row in table.Rows)
            {
                myMail.Body = myMail.Body + @"<tr>
                <td>" +  row["ownerVendor"].ToString() +
                    @"</td>
                <td >" + row["priority"].ToString() +
                @"</td>
                <td>" + row["aditionalParameter"].ToString() +
                @"</td>
            </tr>";
            }

            myMail.Body = myMail.Body + @"</table>";

4 : 其他设置

            myMail.BodyEncoding = System.Text.Encoding.UTF8;

            myMail.IsBodyHtml = true;                  //这句很重要

5 : 发送

            client.Send(myMail);

6 : 邮件的效果类似这样

Hi :

below is .

ASR

ACD

JJTEL

3000

30

ARCA

2000

5

SHINETOWN

2000

5