欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#實(shí)現(xiàn)發(fā)送郵件的三種方法

 更新時(shí)間:2014年11月15日 11:45:30   投稿:shichen2014  
這篇文章主要介紹了C#實(shí)現(xiàn)發(fā)送郵件的三種方法,實(shí)例講述了Localhost,SMTP與SSL-SMTP三種實(shí)現(xiàn)方法,對(duì)于C#項(xiàng)目開發(fā)有不錯(cuò)的借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了C#實(shí)現(xiàn)發(fā)送郵件的三種方法。分享給大家供大家參考。具體方法分析如下:

一、問題:

最近公司由于一個(gè)R&I項(xiàng)目的需要,用戶要求在購買產(chǎn)品或出貨等一些環(huán)節(jié),需要發(fā)送郵件提醒或者說每周一讓系統(tǒng)自動(dòng)采集數(shù)據(jù)發(fā)送一封E-mail,因此我也就找來相關(guān)資料,寫了一個(gè)Demo分享給大家,大家共同學(xué)習(xí)學(xué)習(xí)。

二、實(shí)現(xiàn)代碼:

通過.Net FrameWork 2.0下提供的“System.Net.Mail”可以輕松的實(shí)現(xiàn),本文列舉了3種途徑來發(fā)送:
1.通過Localhost;
2.通過普通SMTP;
3.通過SSL的SMTP;
下面一個(gè)一個(gè)來說:

復(fù)制代碼 代碼如下:
public void SendMailLocalhost() 

System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage(); 
msg.To.Add("a@a.com"); 
msg.To.Add("b@b.com"); 
/* msg.To.Add("b@b.com"); 
* msg.To.Add("b@b.com"); 
* msg.To.Add("b@b.com");可以發(fā)送給多人 
*/ 
msg.CC.Add(c@c.com); 
/* 
* msg.CC.Add("c@c.com"); 
* msg.CC.Add("c@c.com");可以抄送給多人 
*/ 
msg.From = new MailAddress("a@a.com", "AlphaWu", System.Text.Encoding.UTF8); 
/* 上面3個(gè)參數(shù)分別是發(fā)件人地址(可以隨便寫),發(fā)件人姓名,編碼*/ 
msg.Subject = "這是測(cè)試郵件";//郵件標(biāo)題 
msg.SubjectEncoding = System.Text.Encoding.UTF8;//郵件標(biāo)題編碼 
msg.Body = "郵件內(nèi)容";//郵件內(nèi)容 
msg.BodyEncoding = System.Text.Encoding.UTF8;//郵件內(nèi)容編碼 
msg.IsBodyHtml = false;//是否是HTML郵件 
msg.Priority = MailPriority.High;//郵件優(yōu)先級(jí)
 
SmtpClient client = new SmtpClient(); 
client.Host = "localhost"; 
object userState = msg; 
try 

client.SendAsync(msg, userState); 
//簡單一點(diǎn)兒可以client.Send(msg); 
MessageBox.Show("發(fā)送成功"); 

catch (System.Net.Mail.SmtpException ex) 

MessageBox.Show(ex.Message, "發(fā)送郵件出錯(cuò)"); 

}
    public void SendMailLocalhost() 

System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage(); 
msg.To.Add("a@a.com"); 
msg.To.Add("b@b.com"); 
/* msg.To.Add("b@b.com"); 
* msg.To.Add("b@b.com"); 
* msg.To.Add("b@b.com");可以發(fā)送給多人 
*/ 
msg.CC.Add(c@c.com); 
/* 
* msg.CC.Add("c@c.com"); 
* msg.CC.Add("c@c.com");可以抄送給多人 
*/ 
msg.From = new MailAddress(master@boys90.com, "dulei", System.Text.Encoding.UTF8); 
/* 上面3個(gè)參數(shù)分別是發(fā)件人地址(可以隨便寫),發(fā)件人姓名,編碼*/ 
msg.Subject = "這是測(cè)試郵件";//郵件標(biāo)題 
msg.SubjectEncoding = System.Text.Encoding.UTF8;//郵件標(biāo)題編碼 
msg.Body = "郵件內(nèi)容";//郵件內(nèi)容 
msg.BodyEncoding = System.Text.Encoding.UTF8;//郵件內(nèi)容編碼 
msg.IsBodyHtml = false;//是否是HTML郵件 
msg.Priority = MailPriority.High;//郵件優(yōu)先級(jí)
SmtpClient client = new SmtpClient(); 
client.Host = "localhost"; 
object userState = msg; 
try 

client.SendAsync(msg, userState); 
//簡單一點(diǎn)兒可以client.Send(msg); 
MessageBox.Show("發(fā)送成功"); 

catch (System.Net.Mail.SmtpException ex) 

MessageBox.Show(ex.Message, "發(fā)送郵件出錯(cuò)"); 

}

 
2.通過普通SMTP C#代碼如下
復(fù)制代碼 代碼如下:
public void SendMailUseZj()   
{   
System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();   
msg.To.Add(a@a.com);   
msg.To.Add(b@b.com);   
/*  
* msg.To.Add("b@b.com");  
* msg.To.Add("b@b.com");  
* msg.To.Add("b@b.com");可以發(fā)送給多人  
*/   
msg.CC.Add("c@c.com");   
/*  
* msg.CC.Add("c@c.com");  
* msg.CC.Add("c@c.com");可以抄送給多人  
*/   
msg.From = new MailAddress("master@boys90.com", "dulei", System.Text.Encoding.UTF8);   
/* 上面3個(gè)參數(shù)分別是發(fā)件人地址(可以隨便寫),發(fā)件人姓名,編碼*/   
msg.Subject = "這是測(cè)試郵件";//郵件標(biāo)題   
msg.SubjectEncoding = System.Text.Encoding.UTF8;//郵件標(biāo)題編碼   
msg.Body = "郵件內(nèi)容";//郵件內(nèi)容   
msg.BodyEncoding = System.Text.Encoding.UTF8;//郵件內(nèi)容編碼   
msg.IsBodyHtml = false;//是否是HTML郵件   
msg.Priority = MailPriority.High;//郵件優(yōu)先級(jí)   
  
SmtpClient client = new SmtpClient();  
client.Credentials = new System.Net.NetworkCredential("dulei@71info.com", "userpass");   
//在71info.com注冊(cè)的郵箱和密碼   
client.Host = "smtp.71info.com";   
object userState = msg;   
try   
{   
client.SendAsync(msg, userState);   
//簡單一點(diǎn)兒可以client.Send(msg);   
MessageBox.Show("發(fā)送成功");   
}   
catch (System.Net.Mail.SmtpException ex)   
{   
MessageBox.Show(ex.Message, "發(fā)送郵件出錯(cuò)");   
}   
}

 
3.通過SSL的SMTP
復(fù)制代碼 代碼如下:
public void SendMailUseGmail()   
{   
System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();   
msg.To.Add(a@a.com);   
msg.To.Add(b@b.com);   
/*  
 msg.To.Add("b@b.com");  
* msg.To.Add("b@b.com");  
* msg.To.Add("b@b.com");可以發(fā)送給多人  
*/   
msg.CC.Add(c@c.com);   
/*  
* msg.CC.Add("c@c.com");  
* msg.CC.Add("c@c.com");可以抄送給多人  
*/   
msg.From = new MailAddress("boys90.com", "dulei", System.Text.Encoding.UTF8);   
/* 上面3個(gè)參數(shù)分別是發(fā)件人地址(可以隨便寫),發(fā)件人姓名,編碼*/   
msg.Subject = "這是測(cè)試郵件";//郵件標(biāo)題   
msg.SubjectEncoding = System.Text.Encoding.UTF8;//郵件標(biāo)題編碼   
msg.Body = "郵件內(nèi)容";//郵件內(nèi)容   
msg.BodyEncoding = System.Text.Encoding.UTF8;//郵件內(nèi)容編碼   
msg.IsBodyHtml = false;//是否是HTML郵件   
msg.Priority = MailPriority.High;//郵件優(yōu)先級(jí)   
SmtpClient client = new SmtpClient();   
client.Credentials = new System.Net.NetworkCredential("boys90com@gmail.com", "password");   
//上述寫你的GMail郵箱和密碼   
client.Port = 587;//Gmail使用的端口   
client.Host = "smtp.gmail.com";   
client.EnableSsl = true;//經(jīng)過ssl加密   
object userState = msg;   
try   
{   
client.SendAsync(msg, userState);   
//簡單一點(diǎn)兒可以client.Send(msg);   
MessageBox.Show("發(fā)送成功");   
}   
catch (System.Net.Mail.SmtpException ex)   
{   
MessageBox.Show(ex.Message, "發(fā)送郵件出錯(cuò)");   
}   
}

 
通過Gmail來發(fā)送郵件,成功率極高,幾乎都可以發(fā)到,推薦使用,以上的幾種方法,我想已經(jīng)夠我們做開發(fā)的用了。

希望本文所述對(duì)大家的C#程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • C#實(shí)現(xiàn)獲取文件夾大小的方法

    C#實(shí)現(xiàn)獲取文件夾大小的方法

    這篇文章主要介紹了C#實(shí)現(xiàn)獲取文件夾大小的方法,實(shí)例分析了兩種獲取方法,涉及C#針對(duì)文件夾操作的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • C#使用DateTime獲取日期和時(shí)間的實(shí)現(xiàn)

    C#使用DateTime獲取日期和時(shí)間的實(shí)現(xiàn)

    在C#中,DateTime類是用來處理日期和時(shí)間的類,它具有許多屬性和方法,用于操作和獲取日期和時(shí)間的不同部分,本文就來介紹一下C#使用DateTime獲取,感興趣的可以了解一下
    2023-11-11
  • C#調(diào)用Python模塊的方法

    C#調(diào)用Python模塊的方法

    這篇文章主要為大家詳細(xì)介紹了C#調(diào)用Python模塊的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • C#控制Excel Sheet使其自適應(yīng)頁寬與列寬的方法

    C#控制Excel Sheet使其自適應(yīng)頁寬與列寬的方法

    這篇文章主要介紹了C#控制Excel Sheet使其自適應(yīng)頁寬與列寬的方法,涉及C#操作Excel的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2016-06-06
  • 基于C#實(shí)現(xiàn)鼠標(biāo)設(shè)置功能

    基于C#實(shí)現(xiàn)鼠標(biāo)設(shè)置功能

    這篇文章主要為大家詳細(xì)介紹了如何利用C#實(shí)現(xiàn)鼠標(biāo)設(shè)置功能,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起了解一下
    2022-12-12
  • C#實(shí)現(xiàn)窗體間傳值實(shí)例分析

    C#實(shí)現(xiàn)窗體間傳值實(shí)例分析

    這篇文章主要介紹了C#實(shí)現(xiàn)窗體間傳值的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了C#針對(duì)窗體間傳值的處理技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-11-11
  • 簡單聊聊c# 事件

    簡單聊聊c# 事件

    這篇文章主要介紹了c# 事件的相關(guān)資料,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • Unity搖桿制作的方法

    Unity搖桿制作的方法

    這篇文章主要為大家詳細(xì)介紹了Unity搖桿制作的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • winform中的ListBox和ComboBox綁定數(shù)據(jù)用法實(shí)例

    winform中的ListBox和ComboBox綁定數(shù)據(jù)用法實(shí)例

    這篇文章主要介紹了winform中的ListBox和ComboBox綁定數(shù)據(jù)用法,實(shí)例分析了將集合數(shù)據(jù)綁定到ListBox和ComboBox控件的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2014-12-12
  • C#編程簡單實(shí)現(xiàn)生成PDF文檔的方法示例

    C#編程簡單實(shí)現(xiàn)生成PDF文檔的方法示例

    這篇文章主要介紹了C#編程簡單實(shí)現(xiàn)生成PDF文檔的方法,結(jié)合實(shí)例形式分析了C#生成PDF文檔的具體步驟與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2017-07-07

最新評(píng)論