gpt4 book ai didi

c# - 使用 SMTP 发送电子邮件不适用于 asp.net

转载 作者:行者123 更新时间:2023-11-30 18:33:09 25 4
gpt4 key购买 nike

我正尝试在 asp.net 中使用 SMTP 发送电子邮件。以下代码无效。

public string send_email(string name, string email, string message)
{
var fromAddress = email;
var toAddress = "ashish_sharma307@hotmail.com";
string subject = "Feedback";
string body = "From: " + name+ "\n";
body += "Email: " + email + "\n";
body += "Subject: " + subject + "\n";
body += "Question: \n" + message + "\n";
// smtp settings
var smtp = new System.Net.Mail.SmtpClient();
{
smtp.Host = "smtp.live.com";
smtp.Port = 587;
}
smtp.Send(fromAddress, toAddress, subject, body);


return "Your query has been submitted.";
}

这没有按预期工作。我正在尝试通过反馈表发送电子邮件。

最佳答案

将其放入答案中以便于阅读。

为了回答您的意见,这是我将通过没有凭据的服务器发送的邮件消息。

您可以从任何地址向任何人发送电子邮件。

但是,请记住,不能保证电子邮件到达目的地。邮件过滤器通常会拒绝来自未添加到该域的 SPF 记录的 smtp 服务器的电子邮件。

MailMessage m = new MailMessage();

m.From = new MailAddress("Smith@MyDomain.com");
m.To.Add(new MailAddress("someone@TheirCompany.com));
m.Subject = "Message from Smith";
m.Body = "Hello, Test Message";
SendEmail(m);

var smtp = new SmtpClient
{
Host = "localhost",
Port = 25,
UseDefaultCredentials = false,
};

smtp.Send(m);

假设您已经设置了 SMTP 服务器,这是为了通过本地机器发送。

发送电子邮件的变量和选项太多,每个变量和选项都有其自身的局限性。

选项

  1. 设置并运行您自己的 SMTP 服务器
  2. 使用第三方发送电子邮件,例如 Campain Monitor - 还有其他供应商
  3. 如果您仅从公司域发送邮件,并且他们有 Exchange 电子邮件,请使用该服务器

关于c# - 使用 SMTP 发送电子邮件不适用于 asp.net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17910443/

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