zoukankan      html  css  js  c++  java
  • .net实现邮件发送及解决遇到问题

    1、首先写一个Common类,将发送邮件的代码写到里面

            /// <summary>
            /// 发送邮件
            /// </summary>
            /// <param name="toEmail">要发送给哪个邮箱</param>
            /// <param name="subject">邮箱主题</param>
            /// <param name="body">邮箱内容</param>
            /// <returns>返回发送邮箱的结果</returns>             
            public static bool SendEmail(string toEmail, string subject, string body)
            {
                //配置文件中存储的发送人的服务器以及账号信息
                string smtpServer = ConfigurationManager.AppSettings["SmtpServer"];
                string smtpFrom = ConfigurationManager.AppSettings["SmtpFrom"];
                string smtpUserName = ConfigurationManager.AppSettings["SmtpUserName"];
                string smtpPassword = ConfigurationManager.AppSettings["SmtpPassword"];
    
                MailMessage mailObj = new MailMessage();
                mailObj.IsBodyHtml = true;
                mailObj.From = new MailAddress(smtpFrom); //发送人邮箱地址
                mailObj.SubjectEncoding= System.Text.Encoding.UTF8;
                mailObj.BodyEncoding = System.Text.Encoding.UTF8;
                mailObj.Priority = MailPriority.High;//邮件优先级 
                mailObj.To.Add(toEmail);   //收件人邮箱地址
                mailObj.Subject = subject;    //主题
                mailObj.Body = body;    //正文
                SmtpClient smtp = new SmtpClient();//通过.Net内置的SmtpClient类和邮件服务器进行通讯,发送邮件。           
                smtp.Host = smtpServer;         //smtp服务器名称
                smtp.UseDefaultCredentials = false;
                smtp.Credentials = new NetworkCredential(smtpUserName, smtpPassword);  //发送人的登录名和密码                       
                try
                {
                    smtp.Send(mailObj);
                    return true;
                }
                catch (Exception ex)
    
                {
                    return false;
                    throw ex;
                }
            }        

    *下面是配置文件中的发件人以及邮箱配置方式(放在配置文件方便修改,也可以直接在发送邮件类中写)



    2、在controller中调用即可。不过在163邮箱需要配置一下,开启smtp,并且需要将你发送邮件里面配置的smtp密码改为它要求的。

    下面测试调用即可。如果还有错误的话,就会是下面这个错误,同样这个错误也不一定是百分百出现的。但是还是写出来比较好。

    我在断点调试的时候发现的   

    {"事务失败。 服务器响应为:MI:SPB UserReject 0,smtp3,DdGowAA3378huFhYKwDsLg--.19311S2 1482209314,please feedback at http://feedback.mail.126.com/antispam/complain.php?user=lbj13796396303@163.com"}
    

    就需要你去这个地址填写以下163邮箱的协议就好了。

    http://feedback.mail.126.com/antispam/complain.php
  • 相关阅读:
    微信java封装
    解决PowerDesigner 生成Sql2005-2012 找不到sysproperties表的问题
    ASP.net解析JSON例子
    c# 遍历子控件,比如Form下的group,或者panel
    修改sql2005字段
    清除grid内容的列
    sql 2000以及2005以上获取数据库中所有的表(不包括系统表)
    获取SqlServer2005表结构(字段,主键,外键,递增,描述)
    SQL SERVER 数据库实用SQL语句
    查找所有页面中的按钮
  • 原文地址:https://www.cnblogs.com/lbjcoder/p/6206704.html
Copyright © 2011-2022 走看看