gpt4 book ai didi

c# - 使用 gmail 作为 smtp 从 mvc Controller 发送电子邮件

转载 作者:太空宇宙 更新时间:2023-11-03 12:54:07 25 4
gpt4 key购买 nike

我正在尝试从 asp.net mvc Controller 发送电子邮件。此处用于 smpt 的 Gmail 帐户被配置为使用较低的安全性,因此这不是这里的问题。

but I don't get any error message neither any exception, but it not deliver at my expected email address.

我正在使用代码

var text = "email body to deliver";
SendEmail("mydeliverEmailAddress@gmail.com", text);

public static bool SendEmail(string SentTo, string Text)
{
SmtpClient client = new SmtpClient();
client.Credentials = new NetworkCredential("myemail@gmail.com", "myGmailPass");
client.Port = 465;
client.Host = "smtp.gmail.com";
client.EnableSsl = true;

try
{
MailAddress
maFrom = new MailAddress("sender_email@domain.tld", "Sender's Name", Encoding.UTF8),
maTo = new MailAddress(SentTo, "Recipient's Name", Encoding.UTF8);
MailMessage mmsg = new MailMessage(maFrom.Address, maTo.Address);
mmsg.Body = "<html><body><h1>Some HTML Text for Test as BODY</h1></body></html>";
mmsg.IsBodyHtml = true;
mmsg.Subject = "Some Other Text as Subject";
mmsg.SubjectEncoding = Encoding.UTF8;

client.Send(mmsg);
}
catch (Exception ex)
{
}
return true;
}

最佳答案

等一下。您正在使用您的 gmail 帐户:myemail@gmail.com 并试图代表 sender_email@domain.tld 发送电子邮件?

出于比显而易见的原因永远行不通的原因。因此,请确保您使用的电子邮件地址与您进行身份验证所针对的电子邮件地址相同:

maFrom = new MailAddress("myemail@gmail.com", "Sender's Name", Encoding.UTF8),

您只能从经过身份验证的帐户发送电子邮件。当然,收件人电子邮件可以是 gmail 可以发送到的任何地址。

您的代码还有另一个问题。您在这里使用的是接线端口:

client.Port = 465;

gmail SMTP 使用的正确端口如下:

client.Port = 587;

此外,您可能需要确保在您的 gmail 帐户中启用了安全性较低的应用程序,否则您将无法使用 .NET 中的 SmtpClient 来使用此 SMTP 发送电子邮件:https://www.google.com/settings/security/lesssecureapps?pli=1

but I don't get any error message neither any exception, but it not deliver at my expected email address.

当你做了最糟糕的事情时,你期望得到什么错误信息?您将代码包装在一个 try/catch block 中,而在您的 catch block 中您什么也没做。您刚刚使用了异常:

catch (Exception ex)
{
}

因此,如果您要捕获异常,请确保您做了一些有用的事情。例如,有用的东西可能是记录此异常并向用户发送一条错误消息,说明发生了一些不好的事情并且您无法发送电子邮件并且您现在正在调查该问题。

关于c# - 使用 gmail 作为 smtp 从 mvc Controller 发送电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34546699/

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