C#使用自帶的Mail類借用第三方郵件服務器實現郵件的發送

Code first...html

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Net;                               //須要.net framework 4.5+
 5 using System.Net.Mail;
 6 using System.Web;
 7 
 8 /// <summary>
 9 /// MyEmail3 的摘要說明
10 /// </summary>
11 namespace MailS
12 {
13     public class EmailS
14     {
15         /// <summary>
16         /// 郵件發送的主要方法
17         /// </summary>
18         /// <param name="tomail">收件人地址</param>
19         /// <param name="title">郵件標題</param>
20         /// <param name="body">郵件主體</param>
21         /// <returns></returns>
22         public static string SendingMail(string tomail, string title, string body)
23         {
24             string returnwords = "";
25             //這裏是郵箱的smtp服務器地址,網易的是這個,其餘郵箱可百度得到
26             string smtpService = "smtp.163.com";
27             //郵箱地址
28             string sendEmail = "*****@163.com";
29             //Attention Please!! 這裏的密碼不是你郵箱的登陸密碼,而是 客戶端受權碼 ,網易的是本身設置的,QQ的貌似是系統生成,能夠自行看一下
30             string sendpwd = "*****";
31             32 
33 
34             //肯定smtp服務器地址 實例化一個Smtp客戶端
35             SmtpClient smtpclient = new SmtpClient();
36             smtpclient.Host = smtpService;
37             smtpclient.Port = 25;                //qq郵箱能夠不用端口
38 
39             //肯定發件地址與收件地址
40             MailAddress sendAddress = new MailAddress(sendEmail);
41             MailAddress receiveAddress = new MailAddress(tomail);
42 
43             //構造一個Email的Message對象 內容信息
44             MailMessage mailMessage = new MailMessage(sendAddress, receiveAddress);
45             mailMessage.Subject = title;
46             mailMessage.SubjectEncoding = System.Text.Encoding.UTF8;
47             mailMessage.Body = body;
48             mailMessage.BodyEncoding = System.Text.Encoding.UTF8;
49 
50             //郵件發送方式  經過網絡發送到smtp服務器
51             smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network;
52 
53             //若是服務器支持安全鏈接,則將安全鏈接設爲true
54             smtpclient.EnableSsl = true;
55             try
56             {
57                 //是否使用默認憑據,若爲false,則使用自定義的證書,就是下面的networkCredential實例對象
58                 smtpclient.UseDefaultCredentials = false;
59 
60                 //指定郵箱帳號和密碼,須要注意的是,這個密碼是你在QQ郵箱設置裏開啓服務的時候給你的那個受權碼
61                 NetworkCredential networkCredential = new NetworkCredential(sendEmail, sendpwd);
62                 smtpclient.Credentials = networkCredential;
63 
64                 //發送郵件
65                 smtpclient.Send(mailMessage);
66                 returnwords = "發送郵件成功";
67 
68             }
69             catch (SmtpException ex)
70             {
71                 returnwords = ("發送郵件出錯");
72             }
73             return returnwords;
74         }
75     }
76 }

Tips:安全

1.本類中須要的System.Net包須要.NET Framework 4.5以上才能夠支持,建議代碼跑不起來了先升級一下本身項目的框架版本服務器

2.本類並非建立了一個郵件服務器,只是經過你提供的用戶名和受權碼,經過你的郵箱發郵件給指定帳戶網絡

 

原文連接:https://www.cnblogs.com/AaronBear/p/8549648.html框架

相關文章
相關標籤/搜索