a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C# > 正文

c#利用webmail郵件系統發送郵件示例分享

2020-01-24 02:51:51
字體:
來源:轉載
供稿:網友

在C#中發送郵件的方式有2種,一種是使用webmail方式進行發送,另外一種就是采用netmail發送的方式,在采用這2種方式發送郵件時,如果采用公用的郵件服務器(如126郵件服務器,Sina的郵件服務器)都是需要授權認證才能夠發送,如果是采用Gmail的話,還會有每天發送郵件的數量等限制。這2種方式是經過我測試通過了的代碼,只需要將郵件的用戶名和密碼修改成自己的即可,同時也可以修改郵件服務器,改成自己配置的郵件服務器。

復制代碼 代碼如下:

/// <summary>
    /// 發送Email(帶驗證,采用微軟新推薦的方式)
    /// </summary>
    /// <param name="strTo">收件Email</param>
    /// <param name="strCc">抄送Email</param>
    /// <param name="strSubject">標題</param>
    /// <param name="strBody">內容</param>
    /// <param name="UserName">郵箱驗證帳號(與web.config里配置的帳號要一樣)</param>
    /// <param name="from">發信人郵箱,要與UserName對應</param>
    /// <param name="strErrorMsg">錯誤消息</param>
    /// <returns></returns>
    public static bool WebSendEmail(string strTo, string strCc, string strSubject, string strBody, ref string strErrorMsg)
    {
        System.Web.Mail.MailMessage message = new System.Web.Mail.MailMessage();
        System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(@"/w+([-+.']/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*");

        bool bState = false;
        string strSMTPServer = "";

        try
        {
            strSMTPServer = Convert.ToString(System.Configuration.ConfigurationManager.AppSettings["SMTP"]);
            strSMTPServer = strSMTPServer == "" ? "localhost" : strSMTPServer;

            string strFromAddr = Convert.ToString(System.Configuration.ConfigurationManager.AppSettings["FromAddress"]);
            if (reg.IsMatch(strFromAddr))
            {
                message.From = strFromAddr;
            }
            else
            {
                throw new Exception("The Email Address is wrong,Please reset the Email Address in the web.config file !");
            }

            string strTemp = "";
            foreach (string str in strTo.Split(';'))
            {
                if (reg.IsMatch(str))
                    if (!strTemp.Contains(str))
                        strTemp += str + ";";
            }

            message.Cc = "";
            foreach (string str in strCc.Split(';'))
            {
                if (reg.IsMatch(str))
                    if (!message.Cc.Contains(str))
                        message.Cc += str + ";";
            }

            message.Subject = strSubject;
            message.BodyFormat = System.Web.Mail.MailFormat.Html;

            message.Body ="<html><body>UtilMailMessage001"+ strBody+"- success</body></html>" ;
            //下面這塊是加載附件的方法
            MailAttachment attachment1 =new MailAttachment(@"d:/My Documents/test1.doc");
            MailAttachment attachment2 =new MailAttachment("d://Documents//test2.doc");
            message.Attachments.Add(attachment1);
            message.Attachments.Add(attachment2);

            message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", "true");
            message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
            //這里的郵箱帳號和密碼一定要和下面配置文件中設置的郵箱的帳號和密碼一致
            message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "xxxxxxxxx");//郵箱帳號,比如Test11@126.com帳號為:Test11
            message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "xxxxxxxx");//郵箱密碼
            //這個是指明郵件服務器的端口,可以不指定
            //message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", "25");
    

            foreach (string str in strTemp.Split(';'))
            {
                if (reg.IsMatch(str))
                {
                    message.To = str;
                    message.BodyEncoding = System.Text.Encoding.UTF8;
                    System.Web.Mail.SmtpMail.SmtpServer = strSMTPServer;

                    System.Web.Mail.SmtpMail.Send(message);
                }
            }

            bState = true;
        }
        catch (Exception ex)
        {
            System.IO.File.AppendAllText("C://Mail_Log.ini", string.Format("{0:yyyy/MM/dd HH:mm:ss}/r/n{1}/r/n/r/n", DateTime.Now, ex.Message));
            bState = false;
            strErrorMsg = ex.Message;
        }

        return bState;
    }
//測試發送郵件
protected void btnSend_Click(object sender, EventArgs e)
    {
        try
        {

            Email.SendEmail("xxxxxx@163.com", "", "Test Email", "Test Send Email");

        }
        catch (Exception ex)
        {
            Response.Write(ex.Message);
        }
    }

郵件在webconfig文件中配置如下:

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产精品高潮99久久久久久久 | 无码国模国产在线观看 | 成人在线免费观看 | 亚洲天堂色2017 | 91免费看片| 亚洲成人精品 | 国产精品久久久久久久免费大片 | 日韩精品成人 | 天天爱爱网 | 四虎国产成人永久精品免费 | 欧美最猛性xxxxx亚洲精品 | 色欧美综合 | 婷婷激情综合 | 中文字幕在线视频网 | www日本xxx | 黄色毛片在线看 | www精品美女久久久tv | 欧美在线视频网站 | 91精品久久久久久久久久 | 欧美日本韩国一区二区 | 国产一区二区av | 一本色道久久综合亚洲精品高清 | 精品无人乱码区1区2区3区 | 五月婷婷国产 | 国产精品不卡 | 国产精品久久久久久久久久久新郎 | 国产精品久久久久aaaa九色 | 国产精品高潮呻吟久久av黑人 | 久久精品黄色 | 极品久久 | 亚洲精品久久久 | 日韩欧美中文字幕视频 | 日韩av福利| www国产高清 | 久久精品一级 | va在线观看 | 欧美视频在线播放 | 清纯唯美亚洲综合 | 国产精品美女视频免费观看软件 | 国产一区二区影院 | 久久精品二区亚洲w码 |