最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#實(shí)現(xiàn)SMTP郵件發(fā)送程序?qū)嵗?/h1>
 更新時(shí)間:2014年10月10日 11:21:36   投稿:shichen2014  
這篇文章主要介紹了C#實(shí)現(xiàn)SMTP郵件發(fā)送程序?qū)嵗?是一個(gè)非常常見(jiàn)的實(shí)用技巧,需要的朋友可以參考下

通常來(lái)說(shuō)郵件發(fā)送功能在網(wǎng)站應(yīng)用程序中經(jīng)常會(huì)用到,包括大家經(jīng)??吹降牟┛停谔砑釉u(píng)論后,系統(tǒng)會(huì)自動(dòng)發(fā)送郵件通知到我郵箱的,把系統(tǒng)發(fā)送郵件的功能整理了下,本文展示了一個(gè)客戶端Demo,希望對(duì)有需要的朋友有所幫助。運(yùn)行效果如下圖所示:

核心代碼如下:

復(fù)制代碼 代碼如下:
using System;
using System.Net;
using System.Net.Mail;
using System.Text;
namespace HC.Email
{
    /// <summary>
    ///     整站郵件服務(wù)類
    /// </summary>
    public class EmailService
    {
        /// <summary>
        ///     發(fā)送郵件
        /// </summary>
        /// <param name="mailTo">收件人
        /// <param name="subject">主題
        /// <param name="body">內(nèi)容
        /// <returns></returns>
        public static bool Send(string mailTo, string subject, string body)
        {
            return Send(new[] {mailTo}, null, subject, body, true, null);
        }
        /// <summary>
        ///     發(fā)送郵件
        /// </summary>
        /// <param name="mailTo">收件人
        /// <param name="subject">主題
        /// <param name="body">內(nèi)容
        /// <returns></returns>
        public static bool Send(string[] mailTo, string subject, string body)
        {
            return Send(mailTo, null, subject, body, true, null);
        }
 
        /// <summary>
        ///     發(fā)送郵件
        /// </summary>
        /// <param name="mailTo">收件人
        /// <param name="subject">主題
        /// <param name="body">內(nèi)容
        /// <param name="attachmentsPath">附件
        /// <returns></returns>
        public static bool Send(string[] mailTo, string subject, string body, string[] attachmentsPath)
        {
            return Send(mailTo, null, subject, body, true, attachmentsPath);
        }
 
        /// <summary>
        ///     發(fā)送郵件
        /// </summary>
        /// <param name="mailTo">收件人
        /// <param name="mailCcArray">抄送
        /// <param name="subject">主題
        /// <param name="body">內(nèi)容
        /// <param name="isBodyHtml">是否Html
        /// <param name="attachmentsPath">附件
        /// <returns></returns>
        public static bool Send(string[] mailTo, string[] mailCcArray, string subject,string body, bool isBodyHtml,
                                string[] attachmentsPath)
        {
            try
            {
                var config = ConfigHelper.GetConfig<emailconfig>();
                if (string.IsNullOrEmpty(config.Host) ||string.IsNullOrEmpty(config.UserName) ||
                    string.IsNullOrEmpty(config.Port) ||string.IsNullOrEmpty(config.Password))
                {
                    //todo:記錄日志
                    return false;
                }
                var @from = new MailAddress(config.MailFrom); //使用指定的郵件地址初始化MailAddress實(shí)例
                var message = new MailMessage(); //初始化MailMessage實(shí)例
                //向收件人地址集合添加郵件地址
                if (mailTo != null)
                {
                    foreach (string t in mailTo)
                    {
                        message.To.Add(t);
                    }
                }
 
                //向抄送收件人地址集合添加郵件地址
                if (mailCcArray != null)
                {
                    foreach (string t in mailCcArray)
                    {
                        message.CC.Add(t);
                    }
                }
                //發(fā)件人地址
                message.From = @from;
 
                //電子郵件的標(biāo)題
                message.Subject = subject;
 
                //電子郵件的主題內(nèi)容使用的編碼
                message.SubjectEncoding = Encoding.UTF8;
 
                //電子郵件正文
                message.Body = body;
 
                //電子郵件正文的編碼
                message.BodyEncoding = Encoding.Default;
                message.Priority = MailPriority.High;
                message.IsBodyHtml = isBodyHtml;
 
                //在有附件的情況下添加附件
                if (attachmentsPath != null && attachmentsPath.Length > 0)
                {
                    foreach (string path in attachmentsPath)
                    {
                        var attachFile = new Attachment(path);
                        message.Attachments.Add(attachFile);
                    }
                }
                try
                {
                    var smtp = new SmtpClient
                        {
                            Credentials = new NetworkCredential(config.UserName, config.Password),
                            Host = config.Host,
                            Port = Convert.ToInt32(config.Port)
                        };
 
                    //將郵件發(fā)送到SMTP郵件服務(wù)器
                    smtp.Send(message);
                    //todo:記錄日志
                    return true;
                }
                catch (SmtpException ex)
                {
                    //todo:記錄日志
                    return false;
                }
            }
            catch (SmtpException ex)
            {
                //todo:記錄日志
                return false;
            }
        }
    }
}

完整實(shí)例代碼點(diǎn)擊此處本站下載

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

相關(guān)文章

  • C#正則表達(dá)式Regex類用法實(shí)例分析

    C#正則表達(dá)式Regex類用法實(shí)例分析

    這篇文章主要介紹了C#正則表達(dá)式Regex類用法,實(shí)例分析了其中比較常見(jiàn)的幾類用法,具有一定的實(shí)用價(jià)值,需要的朋友可以參考下
    2014-10-10
  • winform攔截關(guān)閉按鈕觸發(fā)的事件示例

    winform攔截關(guān)閉按鈕觸發(fā)的事件示例

    這篇文章主要介紹了c# winform攔截關(guān)閉按鈕觸發(fā)的事件示例,大家參考使用吧
    2014-01-01
  • C#中各種計(jì)時(shí)器用法小結(jié)

    C#中各種計(jì)時(shí)器用法小結(jié)

    這篇文章主要介紹了C#中各種計(jì)時(shí)器用法,結(jié)合實(shí)例形式總結(jié)分析了C#中各種常用時(shí)間相關(guān)類實(shí)現(xiàn)計(jì)時(shí)器功能的操作技巧,需要的朋友可以參考下
    2017-06-06
  • C#使用帶like的sql語(yǔ)句時(shí)防sql注入的方法

    C#使用帶like的sql語(yǔ)句時(shí)防sql注入的方法

    這篇文章主要介紹了C#使用帶like的sql語(yǔ)句時(shí)防sql注入的方法,采用了一個(gè)比較簡(jiǎn)單的字符串過(guò)濾方法就可以有效提高sql語(yǔ)句的安全性,防止sql注入,需要的朋友可以參考下
    2014-09-09
  • C#面向?qū)ο缶幊讨幸蕾嚪崔D(zhuǎn)原則的示例詳解

    C#面向?qū)ο缶幊讨幸蕾嚪崔D(zhuǎn)原則的示例詳解

    在面向?qū)ο缶幊讨校琒OLID?是五個(gè)設(shè)計(jì)原則的首字母縮寫(xiě),旨在使軟件設(shè)計(jì)更易于理解、靈活和可維護(hù)。本文將通過(guò)實(shí)例詳細(xì)講講C#面向?qū)ο缶幊讨幸蕾嚪崔D(zhuǎn)原則,需要的可以參考一下
    2022-07-07
  • WinForm實(shí)現(xiàn)移除控件某個(gè)事件的方法

    WinForm實(shí)現(xiàn)移除控件某個(gè)事件的方法

    這篇文章主要介紹了WinForm實(shí)現(xiàn)移除控件某個(gè)事件的方法,對(duì)C#初學(xué)者有一定的借鑒價(jià)值,需要的朋友可以參考下
    2014-08-08
  • 基于C#?實(shí)現(xiàn)?OPC?DA?Server的問(wèn)題小結(jié)

    基于C#?實(shí)現(xiàn)?OPC?DA?Server的問(wèn)題小結(jié)

    這篇文章主要介紹了基于C#?實(shí)現(xiàn)?OPC?DA?Server的相關(guān)知識(shí),關(guān)于C#怎么編寫(xiě)一個(gè)進(jìn)程外的DCOM組件,這里先不做介紹了,這里主要介紹下OPC?DA?Server?的第一個(gè)接口,感興趣的朋友跟隨小編一起看看吧
    2024-04-04
  • C# TabControl手動(dòng)觸發(fā)DrawItem的實(shí)現(xiàn)

    C# TabControl手動(dòng)觸發(fā)DrawItem的實(shí)現(xiàn)

    本文主要介紹了C# TabControl手動(dòng)觸發(fā)DrawItem的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • C# OCR實(shí)現(xiàn)文字識(shí)別功能

    C# OCR實(shí)現(xiàn)文字識(shí)別功能

    OCR,中文叫做光學(xué)字符識(shí)別。它是利用光學(xué)技術(shù)和計(jì)算機(jī)技術(shù)把印在或?qū)懺诩埳系奈淖肿x取出來(lái),并轉(zhuǎn)換成一種計(jì)算機(jī)能夠接受、人又可以理解的格式。本文將利用OCR實(shí)現(xiàn)文字識(shí)別功能,感興趣的可以了解一下
    2022-11-11
  • C#利用Task實(shí)現(xiàn)任務(wù)超時(shí)多任務(wù)一起執(zhí)行的方法

    C#利用Task實(shí)現(xiàn)任務(wù)超時(shí)多任務(wù)一起執(zhí)行的方法

    這篇文章主要給大家介紹了關(guān)于C#利用Task實(shí)現(xiàn)任務(wù)超時(shí),多任務(wù)一起執(zhí)行的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友下面來(lái)一起看看吧。
    2017-12-12

最新評(píng)論

尼木县| 澄城县| 阳山县| 厦门市| 灌云县| 辽阳县| 泽州县| 邵东县| 酉阳| 南通市| 长海县| 西宁市| 历史| 纳雍县| 茌平县| 铜鼓县| 开原市| 彝良县| 古蔺县| 屏南县| 嵊泗县| 抚宁县| 吴川市| 泗水县| 拜泉县| 仪陇县| 星座| 波密县| 武强县| 犍为县| 峨山| 德昌县| 延吉市| 内江市| 塔城市| 确山县| 永清县| 桂平市| 杭锦后旗| 五峰| 武汉市|