Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.NET MVC-SmtpClient-客户端没有作为此发件人发送的权限_C#_.net_Asp.net_Asp.net Mvc_Smtp - Fatal编程技术网

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

C# ASP.NET MVC-SmtpClient-客户端没有作为此发件人发送的权限,c#,.net,asp.net,asp.net-mvc,smtp,C#,.net,Asp.net,Asp.net Mvc,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

可能重复:

我有一个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应用程序之外获取凭据?)。

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

您在web.config中有smtp设置吗?为什么创建另一个类似于今天的另一个问题:?