zoukankan      html  css  js  c++  java
  • C#使用自带的Mail类借用第三方邮件服务器实现邮件的发送

    Code first...

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Net;                               //需要.net framework 4.5+
     5 using System.Net.Mail;
     6 using System.Web;
     7 
     8 /// <summary>
     9 /// MyEmail3 的摘要说明
    10 /// </summary>
    11 namespace MailS
    12 {
    13     public class EmailS
    14     {
    15         /// <summary>
    16         /// 邮件发送的主要方法
    17         /// </summary>
    18         /// <param name="tomail">收件人地址</param>
    19         /// <param name="title">邮件标题</param>
    20         /// <param name="body">邮件主体</param>
    21         /// <returns></returns>
    22         public static string SendingMail(string tomail, string title, string body)
    23         {
    24             string returnwords = "";
    25             //这里是邮箱的smtp服务器地址,网易的是这个,其他邮箱可百度获得
    26             string smtpService = "smtp.163.com";
    27             //邮箱地址
    28             string sendEmail = "*****@163.com";
    29             //Attention Please!! 这里的密码不是你邮箱的登录密码,而是 客户端授权码 ,网易的是自己设置的,QQ的貌似是系统生成,可以自行看一下
    30             string sendpwd = "*****";
    31             32 
    33 
    34             //确定smtp服务器地址 实例化一个Smtp客户端
    35             SmtpClient smtpclient = new SmtpClient();
    36             smtpclient.Host = smtpService;
    37             smtpclient.Port = 25;                //qq邮箱可以不用端口
    38 
    39             //确定发件地址与收件地址
    40             MailAddress sendAddress = new MailAddress(sendEmail);
    41             MailAddress receiveAddress = new MailAddress(tomail);
    42 
    43             //构造一个Email的Message对象 内容信息
    44             MailMessage mailMessage = new MailMessage(sendAddress, receiveAddress);
    45             mailMessage.Subject = title;
    46             mailMessage.SubjectEncoding = System.Text.Encoding.UTF8;
    47             mailMessage.Body = body;
    48             mailMessage.BodyEncoding = System.Text.Encoding.UTF8;
    49 
    50             //邮件发送方式  通过网络发送到smtp服务器
    51             smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network;
    52 
    53             //如果服务器支持安全连接,则将安全连接设为true
    54             smtpclient.EnableSsl = true;
    55             try
    56             {
    57                 //是否使用默认凭据,若为false,则使用自定义的证书,就是下面的networkCredential实例对象
    58                 smtpclient.UseDefaultCredentials = false;
    59 
    60                 //指定邮箱账号和密码,需要注意的是,这个密码是你在QQ邮箱设置里开启服务的时候给你的那个授权码
    61                 NetworkCredential networkCredential = new NetworkCredential(sendEmail, sendpwd);
    62                 smtpclient.Credentials = networkCredential;
    63 
    64                 //发送邮件
    65                 smtpclient.Send(mailMessage);
    66                 returnwords = "发送邮件成功";
    67 
    68             }
    69             catch (SmtpException ex)
    70             {
    71                 returnwords = ("发送邮件出错");
    72             }
    73             return returnwords;
    74         }
    75     }
    76 }

    Tips:

    1.本类中需要的System.Net包需要.NET Framework 4.5以上才可以支持,建议代码跑不起来了先升级一下自己项目的框架版本

    2.本类并不是创建了一个邮件服务器,只是通过你提供的用户名和授权码,通过你的邮箱发邮件给指定账户

    原文链接:https://www.cnblogs.com/AaronBear/p/8549648.html

  • 相关阅读:
    2019-2020-2 网络对抗技术 20175217 Exp6 MSF基础应用
    2020_1课程设计—基于BC的证书格式转换工具的设计与实现—第二周进展
    2019-2020-2 网络对抗技术 20175217 Exp5 信息搜集与漏洞扫描
    2019-2020-2 网络对抗技术 20175217 Exp4 恶意代码分析
    2019-2020-2 网络对抗技术 20175205 Exp 9 Web安全基础
    2019-2020-2 网络对抗技术 20175205 Exp8 Web基础
    2019-2020-2 网络对抗技术 20175205 Exp7 网络欺诈防范
    2020_1课程设计—基于BC的证书格式转换工具的设计与实现—个人报告
    2020_1课程设计—基于BC的证书格式转换工具的设计与实现—Week3
    2019-2020-2 网络对抗技术 20175205 Exp6 MSF基础应用
  • 原文地址:https://www.cnblogs.com/begonias/p/11061707.html
Copyright © 2011-2022 走看看