C# SMTP发送邮件的示例

 更新时间:2020年12月04日 08:53:47   作者:Bruce-  
这篇文章主要介绍了C# SMTP发送邮件的示例,帮助大家更好的理解和学习c#,感兴趣的朋友可以了解下

在程序开发中通常有推送消息的需求,通常为短信服务,邮件,电话提醒。

短信及电话提醒通常需要向运营商购买服务调用接口,比较麻烦。邮件信息推送也是不错的选择,下面使用C#实现SMTP发送邮件

复制代码/// <summary>
    /// 发送邮件
    /// </summary>
    /// <param name="M">发件内容</param>
    public static void LocalHostSend(SendMail M)
    {
      try
      {
        MailMessage myMail = new MailMessage();//发送电子邮件类
        
        foreach (string item in M.Addressee)//添加收件人
        {
          myMail.To.Add(item);
        }
        foreach (string item in M.CC)//添加抄送
        {
          myMail.CC.Add(item);
          
        }

        myMail.Subject = M.Theme;//邮件主题
        myMail.SubjectEncoding = M.SubjectEncoding;//邮件标题编码

        myMail.From = new MailAddress(M.From, M.DisplayName, M.SubjectEncoding);//发件信息


        myMail.Body = M.Body;//邮件内容
        myMail.BodyEncoding = M.BodyEncoding;//邮件内容编码
        myMail.IsBodyHtml = M.IsBodyHtml;//是否是HTML邮件
        myMail.Priority = M.Priority;//邮件优先级

        SmtpClient smtp = new SmtpClient();//SMTP协议

        smtp.EnableSsl = M.EnableSsl;//是否使用SSL安全加密  使用QQ邮箱必选
        smtp.UseDefaultCredentials = M.UseDefaultCredentials;

        smtp.Host = M.Host;//主机

        smtp.Credentials = new NetworkCredential(M.From, M.Password);//验证发件人信息

        smtp.Send(myMail);//发送

      }
      catch (Exception e)
      {
        MessageBox.Show(e.Message);
      }
      
    }
public class SendMail
  {
    public string From { get; set; }//发件人地址
    public string Password { get; set; }//密码
    public string [] Addressee { get; set; }//收件人地址
    public string [] CC { get; set; }//抄送
    public string Theme { get; set; }//主题
    public string DisplayName { get; set; }//发件人名称
    public Encoding SubjectEncoding { get; set; }//编码
    public string Body { get; set; }//邮件内容
    public Encoding BodyEncoding { get; set; }//邮件内容编码
    public bool IsBodyHtml { get; set; }//是否HTML邮件
    public MailPriority Priority { get; set; }//邮件优先级
    public bool EnableSsl { get; set; }//是否ssl
    public bool UseDefaultCredentials { get; set; }
    public string Host { get; set; }

  }

以上就是C# SMTP发送邮件的示例的详细内容,更多关于C# SMTP发送邮件的资料请关注脚本之家其它相关文章!

相关文章

  • 在C#中根据HardwareID获取驱动程序信息的实现代码

    在C#中根据HardwareID获取驱动程序信息的实现代码

    这篇文章主要介绍了C#中根据HardwareID获取驱动程序信息的实现代码,需要的朋友可以参考下
    2016-12-12
  • C#使用UdpClient类进行简单通信的实例

    C#使用UdpClient类进行简单通信的实例

    本文主要介绍了C#使用UdpClient类进行简单通信的实例,具有很好的参考价值,需要的朋友可以看下
    2016-12-12
  • C# ComboBox的联动操作(三层架构)

    C# ComboBox的联动操作(三层架构)

    这篇文章主要介绍了C# ComboBox的联动操作(三层架构),根据下拉框的变化使得下拉框绑定对应值,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • C#中使用Override和New关键字进行版本控制

    C#中使用Override和New关键字进行版本控制

    在 C# 中,override 和 new 关键字用于控制类之间的成员方法的隐藏和重写,理解它们之间的差异和使用场景对于设计灵活且易于维护的代码至关重要,在这篇博客中,我们将详细探讨这两个关键字的用法,并通过示例来说明它们的实际应用,需要的朋友可以参考下
    2024-10-10
  • 理解C#编程中的静态类和静态成员以及密封类

    理解C#编程中的静态类和静态成员以及密封类

    这篇文章主要介绍了理解C#编程中的静态类和静态成员以及密封类,注意类成员的相关访问限制和类的继承问题,需要的朋友可以参考下
    2016-01-01
  • C#递归算法之快速排序

    C#递归算法之快速排序

    快速排序由C.A.R发明,它依据中心元素的值,利用一系列递归调用将数据表划分成越来越小的子表。在每一步调用中,经过多次的交换,最终为中心元素找到最终的位置。
    2016-06-06
  • 一文带你了解 C# DLR 的世界(DLR 探秘)

    一文带你了解 C# DLR 的世界(DLR 探秘)

    DLR 是 C#4.0 新引进来的概念,其主要目的就是为了动态绑定与交互。下面小编给大家带来一篇不错教程,一文带你了解 C# DLR 的世界,需要的朋友可以参考下
    2020-02-02
  • C#实现可缓存网页到本地的反向代理工具实例

    C#实现可缓存网页到本地的反向代理工具实例

    这篇文章主要介绍了C#实现可缓存网页到本地的反向代理工具,实例分析了C#实现反向代理的相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • C#中实现屏蔽Ctrl+C的方法

    C#中实现屏蔽Ctrl+C的方法

    这篇文章主要介绍了C#中实现屏蔽Ctrl+C的方法,在C#应用程序开发中有一定的实用价值,需要的朋友可以参考下
    2014-08-08
  • C#使用ZXing实现二维码和条形码的生成

    C#使用ZXing实现二维码和条形码的生成

    这篇文章主要为大家详细介绍了C#如何使用ZXing实现二维码和条形码的生成与识别,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-11-11

最新评论