如何使 SMTP 在 C# 中进行身份验证

How can I make SMTP authenticated in C#(如何使 SMTP 在 C# 中进行身份验证)

本文介绍了如何使 SMTP 在 C# 中进行身份验证的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我创建了使用 SMTP 发送消息的新 ASP.NET Web 应用程序.问题是 smtp 未从发送消息的人那里进行身份验证.

I create new ASP.NET web application that use SMTP to send message. The problem is the smtp was not authenticated from who send the message.

如何使 SMTP 在我的程序中通过身份验证?C# 是否有一个具有输入用户名和密码属性的类?

How can I make SMTP authenticated in my program? does C# have a class that have attribute for enter username and password?

推荐答案

using System.Net;
using System.Net.Mail;

using(SmtpClient smtpClient = new SmtpClient())
{
    var basicCredential = new NetworkCredential("username", "password"); 
    using(MailMessage message = new MailMessage())
    {
        MailAddress fromAddress = new MailAddress("from@yourdomain.com"); 

        smtpClient.Host = "mail.mydomain.com";
        smtpClient.UseDefaultCredentials = false;
        smtpClient.Credentials = basicCredential;

        message.From = fromAddress;
        message.Subject = "your subject";
        // Set IsBodyHtml to true means you can send HTML email.
        message.IsBodyHtml = true;
        message.Body = "<h1>your message body</h1>";
        message.To.Add("to@anydomain.com"); 

        try
        {
            smtpClient.Send(message);
        }
        catch(Exception ex)
        {
            //Error, could not send the message
            Response.Write(ex.Message);
        }
    }
}

你可以使用上面的代码.

You may use the above code.

这篇关于如何使 SMTP 在 C# 中进行身份验证的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:如何使 SMTP 在 C# 中进行身份验证

基础教程推荐