C# 通过smtp服务器进行邮件发送 MailHelper

简介: C# 通过smtp服务器进行邮件发送 MailHelper.cs using System;using System.Data;using System.

C# 通过smtp服务器进行邮件发送 MailHelper.cs

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Net;
using System.IO;
using System.Text;
using System.Net.Mail;

/// <summary>
/// MailHelper 的摘要说明
/// </summary>
public class MailHelper
{
    public MailHelper()
    {
    }

    public string addres_mail = Common.GetConfig("mail", "MailConfig.xml");
    public string addres_smtp = Common.GetConfig("smtp", "MailConfig.xml");
    public string addres_mailpwd = Common.GetConfig("mailpwd", "MailConfig.xml");

    //发送邮件
    public static bool SendEmail(string userEmail, string subject, string content)
    {
        SendSms sms = new SendSms();
        bool bfg = false;
        try
        {
            WriteLog("C://Log//SMTP//", "发信邮箱:" + sms.addres_mail + " 发信密码:" + sms.addres_mailpwd + " 发信smtp:" + sms.addres_smtp + " Email:" + userEmail + "\r\n");
            MailMessage msg = new MailMessage();
            msg.IsBodyHtml = true;
            msg.From = new MailAddress(sms.addres_mail, "越界门户网站-密码找回", Encoding.GetEncoding("utf-8"));
            msg.To.Add(userEmail);
            msg.BodyEncoding = Encoding.GetEncoding("utf-8");
            msg.SubjectEncoding = Encoding.GetEncoding("utf-8");
            msg.Subject = subject;
            msg.Body = content;
            //// 添加附件
            string sfile = "附件地址";
            mail.Attachments.Add(new Attachment(sfile));

            SmtpClient mail = new SmtpClient();//实例   
            mail.Host = sms.addres_smtp;     //发信主机   
            mail.Port = 25;
            mail.UseDefaultCredentials = true;
            mail.Credentials = new NetworkCredential(sms.addres_mail, sms.addres_mailpwd);
            mail.Send(msg);
            bfg = true;
        }
        catch (Exception ex)
        {
            WriteLog("C://Log//Error//", "错误信息 Message:" + ex.Message + "  Source:" + ex.Source + " StackTrace:" + ex.StackTrace + "\r\n");
        }

        return bfg;
    }


    /// <summary>
    /// 写日志
    /// </summary>
    public static void WriteLog(string LogPath, string msg)
    {

        try
        {
            string toFileFoder = LogPath;
            string toFileFullPath = LogPath + " " +
                DateTime.Now.ToString("yyyyMMdd") + ".Log";
            DirectoryInfo di = new DirectoryInfo(toFileFoder);
            if (!di.Exists)
            {
                di.Create();
            }
            System.IO.StreamWriter sw = System.IO.File.AppendText(toFileFullPath);
            sw.WriteLine(msg);
            sw.Close();
        }
        catch
        { }
    }
}


目录
相关文章
|
5月前
|
C#
C# WinForm发送Email邮件
C# WinForm发送Email邮件
C# WinForm发送Email邮件
|
5月前
|
网络协议 关系型数据库 Shell
gitlab-设置邮件SMTP以及GitLab收不到邮件的问题
gitlab-设置邮件SMTP以及GitLab收不到邮件的问题
437 1
|
3月前
|
监控 网络协议 网络安全
SMTP操作使用详解并通过python进行smtp邮件发送示例
SMTP操作使用详解并通过python进行smtp邮件发送示例
66 3
|
3月前
|
监控 数据安全/隐私保护
Smtp邮件发送失败情况汇总
Smtp邮件发送失败情况汇总
106 0
|
4月前
|
前端开发 Java 网络安全
基于Java Socket实现的SMTP邮件客户端 - 全面支持SSL, TLS
基于Java Socket实现的SMTP邮件客户端 - 全面支持SSL, TLS
46 0
|
5月前
|
开发框架 前端开发 JavaScript
C# 结合JavaScript实现手写板签名并上传到服务器
C# 结合JavaScript实现手写板签名并上传到服务器
|
11月前
|
网络安全 数据安全/隐私保护
用smtp发送邮件,语法错误,无法识别命令。 服务器响应为:Authentication is re
用smtp发送邮件,语法错误,无法识别命令。 服务器响应为:Authentication is re
219 0
|
5月前
|
API 网络安全 数据安全/隐私保护
SMTP邮件邮箱API发送邮件的方法和步骤
使用SMTP邮件邮箱API(如AokSend)发送邮件涉及6个步骤:获取SMTP服务器地址和端口,进行身份验证,构建邮件内容,连接到服务器,发送邮件及处理结果。例如,Gmail的SMTP服务器地址是smtp.gmail.com,端口587。此方法适用于程序化发送邮件,确保安全并支持大规模发信服务。
|
5月前
|
安全 数据处理 C#
C# Post数据或文件到指定的服务器进行接收
C# Post数据或文件到指定的服务器进行接收
|
Web App开发 存储 C#
C# 10分钟入门基于WebOffice实现在线编辑文档,实时保存到服务器(所有office,兼容WPS)
C# 10分钟入门基于WebOffice实现在线编辑文档,实时保存到服务器(所有office,兼容WPS)
下一篇
无影云桌面