小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Asp.net2.0發(fā)送電子郵件

 mefly 2008-01-14

Asp.net2.0發(fā)送電子郵件

文:Ryo

        通常我們會(huì)用JMail之類的第三方工具,來(lái)解決郵件的接收和發(fā)送等問題的。但是如果客戶的服務(wù)器是租用的不能安裝這些工具的時(shí)候,就可以考慮用.net2.0自己寫一個(gè)發(fā)送和接收郵件的程序。

        首先要引用以下命名空間:
using System.Net;
using System.Net.Mail;
using System.Net.Sockets;
然后首先是發(fā)送郵件的程序,比較簡(jiǎn)單,網(wǎng)上搜索到的也是大同小異:
 MailAddress from = new MailAddress(發(fā)郵件的email地址);
 MailAddress to = new MailAddress(收郵件的email地址);
 MailMessage mailobj = new MailMessage(from, to);
 mailobj.Subject = funcEncode(你的郵件標(biāo)題);
 注意,這里的funcEncode(見附文)是對(duì)文章的標(biāo)題進(jìn)行編碼轉(zhuǎn)換,因?yàn)猷]件系統(tǒng)使用的是MIME協(xié)議,通常會(huì)用到QP編碼(標(biāo)題等短字符)和base64編碼(文章內(nèi)容等長(zhǎng)字符),如果不進(jìn)行編碼轉(zhuǎn)換,收郵件的郵箱通常會(huì)接收中文郵件的時(shí)候出現(xiàn)亂碼,或者會(huì)被過(guò)濾而收不到。
  
 mailobj.Body = “你的郵件正文”;
 mailobj.IsBodyHtml = true;
 mailobj.BodyEncoding = System.Text.Encoding.GetEncoding("GB2312");
 mailobj.Priority = MailPriority.High;
 如果有附件:
 if(aFileUpload.PostedFile.ContentLength > 0)
 {
  mailobj.Attachments.Add(new Attachment(aFileUpload.PostedFile.FileName));
 }
 根據(jù)自己的郵箱,選擇發(fā)郵件的SMTP:
 SmtpClient smtp = new SmtpClient("smtp.163.com");
 smtp.UseDefaultCredentials = false;
 smtp.Credentials = new NetworkCredential(你的郵箱, 郵箱密碼);
 smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
 smtp.Send(mailobj);
 
發(fā)郵件的程序基本完成了。
附:
 //對(duì)標(biāo)題進(jìn)行編碼轉(zhuǎn)換
  public static string funcEncode(string aStr)
  {
   string c = "";
   aStr = System.Web.HttpUtility.UrlEncode(aStr, System.Text.Encoding.GetEncoding("GB2312"));
   int j = 0;
   for(int i = 0; i < aStr.Length; i++)
   {
    if(aStr[i] == '%')
    {
     c += "=";
     j = i;
    }
    if(i - j < 3 && i - j > 0 && j != 0)
    {
     c += aStr[i].ToString().ToUpper();
    }
    else
    {
     if(aStr[i] != '%')
      c += aStr[i];
    }

   }
   
   //為了接收郵件不出現(xiàn)亂碼,我加了一個(gè)標(biāo)頭,聲明用GB2312轉(zhuǎn)換而成的QP編碼。
   return "=?GB2312?Q?" + c + "?=";
  }
 
 //以下就是在讀郵件的時(shí)候用的解碼。
  public static string funcDecode(string aStr)
  {
   string d = "";
   d = aStr.Replace("=", "%");
   d = System.Web.HttpUtility.UrlDecode(d, System.Text.Encoding.GetEncoding("GB2312"));
   return d;
 }

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多