使用C#发送邮件支持 Implicit SSL

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用C#发送邮件支持 Implicit SSL相关的知识,希望对你有一定的参考价值。

安装Package:

Install-Package AIM

 

使用下面的代码发送:

class Mail
{
    private static string mailAddress = "{you email address}";
    private static string host = "{your host server}";
    private static string userName = "{your user name}";
    private static string password = "{your password}";
    private static string userTo = "{to address}";
    private static void SendEmail(string subject, string message)
    {
        //Generate Message 
        var mailMessage = new MimeMailMessage();
        mailMessage.From = new MimeMailAddress(mailAddress);
        mailMessage.To.Add(userTo);
        mailMessage.Subject = subject;
        mailMessage.Body = message;

        //Create Smtp Client
        var mailer = new MimeMailer(host, 465);
        mailer.User = userName;
        mailer.Password = password;
        mailer.SslType = SslMode.Ssl;
        mailer.AuthenticationMode = AuthenticationType.Base64;

        //Set a delegate function for call back
        mailer.SendCompleted += compEvent;
        mailer.SendMailAsync(mailMessage);
    }

    //Call back function
    private static void compEvent(object sender, AsyncCompletedEventArgs e)
    {
        if (e.UserState != null)
            Console.Out.WriteLine(e.UserState.ToString());

        Console.Out.WriteLine("is it canceled? " + e.Cancelled);

        if (e.Error != null)
            Console.Out.WriteLine("Error : " + e.Error.Message);
    }
}

  

以上是关于使用C#发送邮件支持 Implicit SSL的主要内容,如果未能解决你的问题,请参考以下文章

Java发送邮件初窥

SMTP - SSL 证书问题 - C# - 为啥此代码有效?

C# 发送qq邮箱

javamail 发送邮件(SSL)

使用 smtp 和 Python 发送电子邮件时出现 SSL 错误

如何在php中使用ssl通过smtp发送邮件