C# 邮箱在c中不可用

C# 邮箱在c中不可用,c#,C#,我试图通过我的程序发送电子邮件,使用以下方法: MailMessage email = new MailMessage("IT_REQUEST@creandsel.com.au", "ben.hall@creandsel.com.au"); SmtpClient client = new SmtpClient(); client.Port = 25; client.DeliveryMethod = SmtpDeliveryMethod.Network; client.UseDefaultCred

我试图通过我的程序发送电子邮件,使用以下方法:

MailMessage email = new MailMessage("IT_REQUEST@creandsel.com.au", "ben.hall@creandsel.com.au");
SmtpClient client = new SmtpClient();
client.Port = 25;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
client.Host = "hp132.hostpapa.com";
email.Subject = "New IT Request";
email.Body = Model.Description;

client.Send(email); // Error catches here
但是,我收到了错误消息:

邮箱不可用。服务器响应为:访问被拒绝-直升机名称无效请参阅RFC2821 4.1.1.1

我尝试了其他主机creandsel.com.au,效果也一样。我相信这可能是因为我正在从内部网络向第三方电子邮件提供商发送此邮件


另外,不确定这是否重要,但发送者会注意到这一点_REQUEST@creandsel.com.au不存在。

首先确保SMTP适用于您的环境。如果启用,则需要传递SMTP凭据用户名/密码对,因为未成功通过SMTP服务器的身份验证

SmtpClient client = new SmtpClient();
client.Port = 25;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
// explicitly declare that you will be providing the credentials:
client.UseDefaultCredentials = false;
client.Credentials = new NetworkCredential("username", "password");
client.Host = "hp132.hostpapa.com";
email.Subject = "New IT Request";
email.Body = Model.Description;

我能否澄清NetworkCredential指的是什么?是用户信息、主机信息还是内部网络信息?@Ben验证smtp服务器的用户名/密码。你需要问问你的infra员工他们用了什么。如果您的公司使用的是Microsoft Exchange,则可能是您的Win登录,在这种情况下,您可以改为使用.UseDefaultCredentials=true。具有讽刺意味的是,DefaultCredentials不是默认的。