zoukankan      html  css  js  c++  java
  • 使用System.Net.Mail通过gmail发送电子邮件

    gmail的smtp采用了ssl连接:
         Outgoing Mail (SMTP) Server - requires TLS: smtp.gmail.com (use authentication)
         Use Authentication: Yes
         Use STARTTLS: Yes (some clients call this SSL)
         Port: 465 or 587

    知道了gmail的发信细节,用System.Net.Mail,就是下面这段代码就可以了
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Net;
    using System.Net.Mail;

    namespace GMailSend
    {
        
    class Program
        
    {
            
    static void Main(string[] args)
            
    {
                
    try
                
    {
                    Program prg 
    = new Program();
                    prg.Host 
    = "smtp.gmail.com";
                    prg.SmtpUsername 
    = "zhangshanyou@gmail.com";
                    prg.SmtpPassword 
    = "xxxxxxxx";
                    prg.Port 
    = 587;
                    prg.Send(
    "zhangshanyou@gmail.com","33235911@qq.com",  "test""test"nullnull);
                }

                
    catch (Exception ex)
                
    {
                    Console.WriteLine(ex.Message);

                }

                Console.Read();
            }


            
    private string _host;

            
    public string Host
            
    {
                
    get return _host; }
                
    set { _host = value; }
            }

            
    private int _port;

            
    public int Port
            
    {
                
    get return _port; }
                
    set { _port = value; }
            }

            
    private string _smtpUsername;

            
    public string SmtpUsername
            
    {
                
    get return _smtpUsername; }
                
    set { _smtpUsername = value; }
            }

            
    private string _smtpPassword;

            
    public string SmtpPassword
            
    {
                
    get return _smtpPassword; }
                
    set { _smtpPassword = value; }
            }


            
    public void Send(string from, string to, string subject, string body, string[] cc, string[] bcc)
            
    {
                
    // Create mail message
                MailMessage message = new MailMessage(from, to, subject, body);
                message.BodyEncoding 
    = Encoding.GetEncoding(936);

                
    if (cc != null && cc.Length > 0)
                
    {
                    
    foreach (string ccAddress in cc)
                    
    {
                        message.CC.Add(
    new MailAddress(ccAddress));
                    }

                }

                
    if (bcc != null && bcc.Length > 0)
                
    {
                    
    foreach (string bccAddress in bcc)
                    
    {
                        message.Bcc.Add(
    new MailAddress(bccAddress));
                    }

                }


                
    // Send email
                SmtpClient client = new SmtpClient(this._host, this._port);
                
    if (!String.IsNullOrEmpty(this._smtpUsername) && !String.IsNullOrEmpty(this._smtpPassword))
                
    {
                    client.Credentials 
    = new NetworkCredential(this._smtpUsername, this._smtpPassword);
                }

                client.EnableSsl 
    = true;

                client.Send(message);
                
            }


        }

    }

    欢迎大家扫描下面二维码成为我的客户,为你服务和上云

  • 相关阅读:
    iOS MVC、MVVM、MVP详解
    消息队列(mq)是什么?
    使用 tail 结合 grep 查找日志关键字并高亮及显示所在行上下文
    Linux下实现高可用软件-Keepalived基础知识梳理
    手动编译部署LNMP环境(CentOS7.5+Nginx-1.18.0+MySQL-5.7.30+PHP-7.4.14)
    linux 查看硬盘使用情况
    解决vue3.0新建项目无法选中Manually select features
    运行vue项目时报错:You may use special comments to disable some warnings. Use // eslint-disable-next-line to ignore the next line. Use /* eslint-disable */ to ignore all warnings in a file.
    git pull 报错remote: HTTP Basic: Access denied fatal: Authentication failed for 的解决方法
    Excel文档导出——后端返回文件流,前端实现下载功能
  • 原文地址:https://www.cnblogs.com/shanyou/p/777874.html
Copyright © 2011-2022 走看看