C#如何发送邮件

准备工作:

1.开启Smtp服务

2.如果邮件设置中有“客户端授权码"(以163邮箱为例,有的邮箱不需要),需要开启“客户端授权码"

发送邮件:

using (MailMessage mailMessage = new MailMessage()) {

  using (SmtpClient smtpClient = new SmtpClient(Smtp 服务器)) { 

    mailMessage.To.Add(接收邮箱);  mailMessage.To.Add(接收邮箱 2); 

    mailMessage.Body = "邮件正文"; 

    mailMessage.From = new MailAddress(发送邮箱); 

    mailMessage.Subject = "邮件标题"; 

    smtpClient.Credentials = new System.Net.NetworkCredential(Smtp 发送用户名, Smtp 发 送密码);//如果启用了“客户端授权码”,要用授权码代替密码 

    smtpClient.Send(mailMessage);

  } 

}

如果启用了SSL,并且不支持非安全连接,还需要设置smtpClient.EnableSsl=true(某些服务器中不开放25端口,所以只能用Ssl的方式以465端口发送)。

如果大量通过邮箱发送验证码,可以借助于 SendCloud、阿里云等第三方的“触发邮件” 服务,可以保证到达率。

如果是公司内部发邮件,可以自己搭建邮件服务器或者购买企业邮箱服务。

以上代码是以第三方免费的smtp服务进行发送的,如果发送邮件太多,可能会被封,只能换服务商。

猜你喜欢

转载自www.cnblogs.com/w821759016/p/9154211.html