asp.net发送邮件代码(Gmail、163能发)

简介:     今天测试了gmail的邮箱能发出去,其它的我测试是发不出去。   #region 发送邮件的函数         ///         /// 发送邮件函数Gmail         ///         /// 邮件主题         /// 邮件内容         /// 邮箱服务器(为空值则为smtp.
    今天测试了gmail的邮箱能发出去,其它的我测试是发不出去。

  #region 发送邮件的函数
        /// <summary>
        /// 发送邮件函数Gmail
        /// </summary>
        /// <param name="EmailSubject">邮件主题</param>
        /// <param name="EmailBody">邮件内容</param>
        /// <param name="smtpserver">邮箱服务器(为空值则为smtp.gmail.com)</param>
        /// <param name="receiveEmail">接收邮箱</param>
        /// <param name="FromEmail">发送者邮箱</param>
        /// <param name="FromPassword">发送者邮箱密码</param>
        /// <param name="FromEmailName">显示发送者邮箱名字</param>
        /// <param name="SmtpPort">发送邮件的端口(默认为 587)</param>
        /// <returns>返回提示信息</returns>
        public static string SendEmailG(string EmailSubject, string EmailBody, string smtpserver, string receiveEmail, string FromEmail, string FromPassword, string FromEmailName,params int[]SmtpPort)
        {
            try
            {
                FromEmailName=(FromEmailName==""?"系统发出":FromEmailName);
                smtpserver = (smtpserver == "" ? "smtp.gmail.com" : smtpserver);
                System.Net.Mail.MailMessage mailObj = new System.Net.Mail.MailMessage();
                mailObj.IsBodyHtml = true;
                mailObj.Subject = EmailSubject;
                mailObj.Body = EmailBody;
                mailObj.To.Add(new MailAddress(receiveEmail, receiveEmail, System.Text.Encoding.UTF8));
                mailObj.BodyEncoding = System.Text.Encoding.UTF8;
                mailObj.SubjectEncoding=System.Text.Encoding.UTF8;
                System.Net.Mail.SmtpClient SmtpMail = new SmtpClient(smtpserver);
                mailObj.From = new MailAddress(FromEmail, FromEmailName, System.Text.Encoding.UTF8);
                SmtpMail.Credentials = new System.Net.NetworkCredential(FromEmail, FromPassword);
                //gmail 专有配置 开始
                SmtpMail.Port =(SmtpPort.Length<=0?587:SmtpPort[0]);
                SmtpMail.EnableSsl = true;
                //gmail 专有配置 结束
                SmtpMail.Send(mailObj);
                return "发送成功!";
            }
            catch (Exception ex)
            {
                return ex.ToString();
            }
        }
        #endregion

 

//163邮箱的能发

        string ErrMsg = "";

        public Email()
        {

        }

        /// <summary>
        /// 发送邮件
        /// </summary>
        /// <param name="smtpserver">邮件服务器</param>
        /// <param name="mailuser">登录帐号</param>
        /// <param name="mailpassword">登录密码</param>
        /// <param name="mailFrom">发送人</param>
        /// <param name="mailContent">邮件内容</param>
        /// <param name="mailTo">收信邮箱</param>
        /// <param name="mailTitle">邮件标题</param>
        /// <returns></returns>
        public bool SendEmail(string smtpserver, string mailuser, string mailpassword, string mailFrom, string mailContent, string mailTo, string mailTitle)
        {
            MailMessage mail = new MailMessage(mailFrom, mailTo);
            mail.BodyEncoding = Encoding.Default;
            mail.Subject = mailTitle;
            mail.Body = mailContent;
            mail.Priority = MailPriority.Normal;
            mail.IsBodyHtml = true;

            SmtpClient smtp = new SmtpClient(smtpserver);
            smtp.UseDefaultCredentials = false;
            smtp.Credentials = new System.Net.NetworkCredential(mailuser, mailpassword);
            smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
            try
            {
                smtp.Send(mail);
                mail.Dispose();//释放对象
                smtp.Dispose();//释放对象
            }
            catch (Exception ex)
            {
                ErrMsg = ex.Message;
                return false;
            }
            return true;
        }
        /// <summary>
        /// 发送邮件
        /// </summary>
        /// <param name="config">配置文件config对象</param>
        /// <param name="mailContent">邮件内容</param>
        /// <param name="mailTo">收信邮箱</param>
        /// <param name="mailTitle">邮件标题</param>
        /// <returns></returns>
        public bool SendEmail(DataRow config, string mailContent, string mailTo, string mailTitle)
        {
            string MailSmtpServer = config["MailSmtpServer"].ToString();
            string MailServerUserName = config["MailServerUserName"].ToString();
            string MailServerPassWord = config["MailServerPassWord"].ToString();
            string MailServerFrom = config["MailServerFrom"].ToString();
            return SendEmail(MailSmtpServer, MailServerUserName, MailServerPassWord, MailServerFrom, mailContent, mailTo, mailTitle);
        }
        //<MailSmtpServer>smtp.163.com</MailSmtpServer>
        //<MailServerUserName>test@163.com</MailServerUserName>
        //<MailServerPassWord>*****</MailServerPassWord>
        //<MailServerFrom>test@163.com</MailServerFrom>




-----pukuimin

相关文章
|
6月前
|
API 网络安全 数据安全/隐私保护
.NET邮箱API发送邮件的方法有哪些
本文介绍了.NET开发中使用邮箱API发送邮件的方法,包括SmtpClient类发送邮件、MailMessage类创建邮件消息、设置SmtpClient属性、同步/异步发送、错误处理、发送HTML格式邮件、带附件邮件以及多人邮件。AokSend提供高触达发信服务,适用于大规模验证码发送场景。了解这些技巧有助于开发者实现高效、可靠的邮件功能。
|
6月前
|
JSON IDE 前端开发
[.NET开发者的福音]一个方便易用的在线.NET代码编辑工具.NET Fiddle
[.NET开发者的福音]一个方便易用的在线.NET代码编辑工具.NET Fiddle
|
3月前
|
API
【Azure 媒体服务】Media Service的编码示例 -- 创建缩略图子画面的.NET代码调试问题
【Azure 媒体服务】Media Service的编码示例 -- 创建缩略图子画面的.NET代码调试问题
|
3月前
|
C# 开发者 Windows
在VB.NET项目中使用C#编写的代码
在VB.NET项目中使用C#编写的代码
57 0
|
1月前
|
前端开发 JavaScript C#
CodeMaid:一款基于.NET开发的Visual Studio代码简化和整理实用插件
CodeMaid:一款基于.NET开发的Visual Studio代码简化和整理实用插件
|
3月前
|
Kubernetes 监控 Devops
【独家揭秘】.NET项目中的DevOps实践:从代码提交到生产部署,你不知道的那些事!
【8月更文挑战第28天】.NET 项目中的 DevOps 实践贯穿代码提交到生产部署全流程,涵盖健壮的源代码管理、GitFlow 工作流、持续集成与部署、容器化及监控日志记录。通过 Git、CI/CD 工具、Kubernetes 及日志框架的最佳实践应用,显著提升软件开发效率与质量。本文通过具体示例,助力开发者构建高效可靠的 DevOps 流程,确保项目成功交付。
77 0
|
3月前
|
XML 开发框架 .NET
.NET框架:软件开发领域的瑞士军刀,如何让初学者变身代码艺术家——从基础架构到独特优势,一篇不可错过的深度解读。
【8月更文挑战第28天】.NET框架是由微软推出的统一开发平台,支持多种编程语言,简化应用程序的开发与部署。其核心组件包括公共语言运行库(CLR)和类库(FCL)。CLR负责内存管理、线程管理和异常处理等任务,确保代码稳定运行;FCL则提供了丰富的类和接口,涵盖网络、数据访问、安全性等多个领域,提高开发效率。此外,.NET框架还支持跨语言互操作,允许开发者使用C#、VB.NET等语言编写代码并无缝集成。这一框架凭借其强大的功能和广泛的社区支持,已成为软件开发领域的重要工具,适合初学者深入学习以奠定职业生涯基础。
102 1
|
3月前
|
API
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
|
3月前
|
存储 Linux 网络安全
【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Linux/Linux Container)
【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Linux/Linux Container)
|
3月前
|
网络安全 API 数据安全/隐私保护
【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Windows)
【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Windows)
下一篇
无影云桌面