C#发送邮件 SMTP

1.打开qq邮箱的smtp服务

点击设置

C#发送邮件 SMTP_第1张图片

点击账户

C#发送邮件 SMTP_第2张图片

开启smtp服务

C#发送邮件 SMTP_第3张图片

 复制出来授权码

C#发送邮件 SMTP_第4张图片

 2.编写需要的接口

using System;
using System.Net;
using System.Net.Mail;
using System.Net.Security;
using System.Security.Cryptography.X509Certificates;
using System.Text;

namespace AmazonSESSample
{
    class Program
    {
        static void Main(string[] args)
        {
            
            try
            {
                
                MailMessage mail = new MailMessage();
                //是谁发送的邮件 
				//fromEmail 写你的邮箱地址 [email protected]  
				//name 与fromEmail关联的显示名。此参数可以为 null
                mail.From = new MailAddress(fromEmail, name);
               
                //发送给谁  你要发送的邮箱号
                mail.To.Add(toEmail);
                //邮件的标题
                mail.Subject = "测试邮件发送";
				//邮件标题的编码方式
                mail.SubjectEncoding = Encoding.UTF8;
                //邮件内容的编码方式
                mail.BodyEncoding = Encoding.UTF8;

                //邮件发送优先级 
                mail.Priority = MailPriority.High;

                //邮件内容 
                mail.Body = "测试邮件发送的内容";

                //邮件是否HTML形式发送 
                mail.IsBodyHtml = true;

                //邮件服务器和端口 
				//host 你发送邮件的服务器,我们用的是qq,他的服务器就是  smtp.qq.com
				//port 端口号,这里一般使用  25, 465 or 587  最好使用587
                SmtpClient smtp = new SmtpClient( host,  port);
				
                //SmtpClient smtp = new SmtpClient("smtp.qq.com", 587);
				//使用默认凭证
                smtp.UseDefaultCredentials = true;
				//是否使用安全套接字层加密连接
                smtp.EnableSsl = true;

                //指定发送方式 
				//SmtpDeliveryMethod.Network  电子邮件通过网络发送到 SMTP 服务器。
                smtp.DeliveryMethod = SmtpDeliveryMethod.Network;

                //指定登录名和密码 
				//username 就是你的邮箱[email protected] 
				//password 就是你的授权码,不需要空格
                smtp.Credentials = new System.Net.NetworkCredential(username, password);
                //访问超时时间 
                smtp.Timeout = 100000;
				
					try
					{
						//开始发送邮件
						smtp.Send(mail);
					   
					}
					catch (SmtpException ex)
					{
						throw ex;
					}
					
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
				    //关闭邮件资源
                    mail.Dispose();
                    smtp = null;
                }
            }
            catch (Exception e)
            {
                
               string s = e.ToString();
            }

        }
    }
}

如果有疑问可以私信我解决。

这是我发送成功的截图

 C#发送邮件 SMTP_第5张图片

 

你可能感兴趣的:(学习,c#,开发语言,后端)