• Asp.net 自动发送邮件的方法 (转)


     

    今天有一个模块需要自动发送邮件的功能,就随便写了一个,记录一下作为积累。


    一、首先需要配置web.config文件:


     

    1<system.net>
    2  <mailSettings>
    3    <smtp from="Emailname">
    4        <network host="smtp.163.com" userName="Emailname" password="Emailpassword" 
    5        port="25" defaultCredentials="false"/>
    6    </smtp>
    7  </mailSettings>
    8</system.net>


    二、然后编写发送邮件的函数:


     

     1Asp.net 自动发送邮件的方法  
     2今天有一个模块需要自动发送邮件的功能,就随便写了一个,记录一下作为积累。
     3
     4
     5一、首先需要配置web.config文件:
     6
     7
     8<system.net>
     9  <mailSettings>
    10    <smtp from="Emailname">
    11        <network host="smtp.163.com" userName="Emailname" password="Emailpassword" 
    12        port="25" defaultCredentials="false"/>
    13    </smtp>
    14  </mailSettings>
    15</system.net>
    16
    17
    18二、然后编写发送邮件的函数:
    19
    20
    21///<summary>
    22/// 邮件发送方法(带附件)
    23/// </summary>
    24/// <param name="mailto">收件人地址。如:receiver@163.com</param>
    25/// <param name="mailsubject">邮件标题</param>
    26/// <param name="mailbody">邮件正文</param>
    27/// <param name="mailFrom">邮件发送人地址。如:sender@163.com</param>
    28/// <param name="list">附件路径</param>
    29/// <returns></returns>

    30public bool MySendMail(string mailto, string mailsubject, string mailbody, string mailFrom, ArrayList list)
    31{
    32  try
    33  {
    34    //邮件发送人地址
    35    System.Net.Mail.MailAddress from = new System.Net.Mail.MailAddress(mailFrom);
    36    //如test@163.com,初步测试,用test@sina.com不行,用163的邮件服务器,就必须用163邮箱的用户名
    37    //收件人地址
    38    System.Net.Mail.MailAddress to = new System.Net.Mail.MailAddress(mailto);//如test@tom.com
    39    System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage(from, to);
    40    mail.Subject = mailsubject;
    41    mail.Body = mailbody;
    42    //以下设置服务器
    43    System.Net.Mail.SmtpClient mySmth = new System.Net.Mail.SmtpClient();
    44    //以下为增加附件
    45    int count = list.Count;
    46    for (int i = 0; i < count; i++)
    47    {
    48      System.Net.Mail.Attachment data = new System.Net.Mail.Attachment(list[i].ToString());
    49      mail.Attachments.Add(data);
    50    }

    51    mySmth.Send(mail);
    52    mail.Dispose();
    53    return true;
    54  }

    55  catch
    56  {
    57    return false;
    58  }

    59}

    60
    61
    62三、最后就是对函数的调用了:
    63
    64
    65//自动发送邮件
    66string mailSubject = "会员注册确认函";
    67string mailBody = "正文内容。";
    68string mailFrom = ConfigurationManager.AppSettings["SendMail"];
    69ArrayList List = new ArrayList();
    70List.Add(Server.MapPath(ConfigurationManager.AppSettings["SendMailText"]));
    71if (MySendMail(this.txtEmail.Text, mailSubject, mailBody, mailFrom, List))
    72{
    73  
    74  //发送成功,进行相应处理
    75}

    76else
    77{
    78  
    79  //发送失败,进行相应处理
    80  return;
    81}

    82 
    83


    三、最后就是对函数的调用了:


     

     1//自动发送邮件
     2string mailSubject = "会员注册确认函";
     3string mailBody = "正文内容。";
     4string mailFrom = ConfigurationManager.AppSettings["SendMail"];
     5ArrayList List = new ArrayList();
     6List.Add(Server.MapPath(ConfigurationManager.AppSettings["SendMailText"]));
     7if (MySendMail(this.txtEmail.Text, mailSubject, mailBody, mailFrom, List))
     8{
     9  
    10  //发送成功,进行相应处理
    11}

    12else
    13{
    14  
    15  //发送失败,进行相应处理
    16  return;
    17}
  • 相关阅读:
    Django + uWSGI + Nginx 实现生产环境部署
    面试题(一)
    Python基础之路
    Tornado之实例和扩展
    Scrapy源码研究前戏
    算法之基本概念
    RedHat6.2系统安装ipvsadm+keepalived
    oracle11G 同时支持IPV4和IPV6配置
    redhat6.5 安装oracle11G
    python解析字体反爬
  • 原文地址:https://www.cnblogs.com/ly5201314/p/1331005.html
Copyright © 2020-2023  润新知