ASP.NET MVC-SmtpClient-客户端没有作为此发件人发送的权限

本文关键字:权限 MVC-SmtpClient- NET 客户端 ASP | 更新日期: 2023-09-27 18:07:10

可能重复:
.NET SMTP客户端-客户端没有作为此发件人发送的权限

我有一个ASP.NET MVC3应用程序,它执行以下代码。

MailMessage message = new MailMessage("none@none.com", "none@none.com", "Test Message","Test Body");
EmailManager.Send(message);

然后我有一个参考DLL,用于发送电子邮件。

public static class EmailManager
{
    #region Public Methods
    public static void Send(MailMessage message)
    {
        if (ApplicationConfiguration.Instance.EnableEmail)
        {
            var client = new SmtpClient(ApplicationConfiguration.Instance.SmtpAddress);
            client.UseDefaultCredentials = true;
            client.Send(message);
        }
    }
    #endregion
}

我遇到的问题是,当我发送电子邮件时,我会收到以下错误:邮箱不可用。

The server response was: 5.7.1 Client does not have permissions to send as this sender

有趣的是,当我直接在Web应用程序中使用相同的代码时,电子邮件发送是正确的。当通过引用的DLL调用凭据时,凭据没有被提取是有原因的吗?可能是因为它是静态的(或者不能在web应用程序之外获取凭据?(。

ASP.NET MVC-SmtpClient-客户端没有作为此发件人发送的权限

这通常发生在SMTP服务器被锁定时。它可能有一个IP地址白名单,而你的地址不在其中,或者你的to地址不在授权出站域列表中。