gpt4 book ai didi

c# - 如何从我的 C# 代码隐藏发送电子邮件 - 获取 System.Net.Mail.SmtpFailedRecipientException

转载 作者:行者123 更新时间:2023-12-03 04:06:19 26 4
gpt4 key购买 nike

我有一个网络表单,有人可以在其中设置帐户 - 我想向他们发送一封电子邮件确认。

我正在使用的代码:

       // Create e-mail message
MailMessage mm = new MailMessage();
mm.From = new MailAddress("OurOrganisationEmail@ourdomain.com", "Our Organisation");
mm.To.Add(new MailAddress("webuser@domain.com", "Web User"));

mm.Subject = "Confirmation";
mm.Body = "You are now registered test";
mm.IsBodyHtml = true;

// Send e-mail
sc = new SmtpClient();

NetworkCredential basicAuthenticationInfo = new NetworkCredential(“OurOrganisationEmail@ourdomain.com”, “ourorganisationemailPassword”);
sc.Credentials = basicAuthenticationInfo;
sc.UseDefaultCredentials = false;

sc.Send(mm);

网络配置:

<system.net>
<mailSettings>
<smtp>
<network host="mail.OurOrganisationEmail@ourdomain.com" port="9999" userName="OurOrganisationEmail@ourdomain.com" password="OurOrganisationEmailPassword"/>
</smtp>
</mailSettings>
</system.net>

但是得到:

System.Net.Mail.SmtpFailedRecipientException was caught
HResult=-2146233088
Message=Mailbox unavailable. The server response was: Authentication is required for relay
Source=System
FailedRecipient=<webuser@domain.com>

看起来它需要我想要发送到的网址的用户登录详细信息。我该如何修改这一点并像所有其他商业公司那样发送此类确认电子邮件?

最佳答案

好的 - 成功了。以下是工作编码;看起来我配置 NetworkCredential 对象是问题所在。感谢大家帮助我找到解决方案。

        MailAddress fromAddress =  new MailAddress("OurOrganisationEmail@ourdomain.com","Our Organisation");//"name@yourdomain.com";
MailAddress toAddress = new MailAddress("webuser@domain.com", "Web User"); //"name@anydomain.com";

//Create the MailMessage instance
MailMessage myMailMessage = new MailMessage(fromAddress, toAddress);

//Assign the MailMessage's properties
myMailMessage.Subject = "Confirmation";
myMailMessage.Body = "You are now registered test";
myMailMessage.IsBodyHtml = true;

//Create the SmtpClient object
SmtpClient smtp = new SmtpClient();

//Send the MailMessage (will use the Web.config settings)
smtp.Send(myMailMessage);

网络配置

<system.net>
<mailSettings>
<smtp>
<network host="mail.ourdomain.com" port="9999" userName="OurOrganisationEmail@ourdomain.com" password="OurOrganisationEmailPassword"/>
</smtp>
</mailSettings>
</system.net>

关于c# - 如何从我的 C# 代码隐藏发送电子邮件 - 获取 System.Net.Mail.SmtpFailedRecipientException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15068611/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com