提问人:Sébastien Grossetti 提问时间:2/4/2023 最后编辑:quaabaamSébastien Grossetti 更新时间:5/6/2023 访问量:280
无法从生产中的 ASP.NET 4.8 网站发送电子邮件
Cannot send email from an ASP.NET 4.8 website in prod
问:
我使用 C# 创建了一个 ASP.NET 网站,该网站面向使用 Visual Studio 的 .NET 4.8。
该网站托管在 Windows Server 上的 Ionos(又名 1&1),但我无法访问它或 IIS 控制台。
在我的开发工作站中,我可以使用以下代码中的 define 成功发送电子邮件:MailSender.Send(....)
using System;
using System.Net;
using System.Net.Mail;
public class MailSender {
public static void Send(string server, int port, string body, string subject, string to = "[email protected]", string from = "[email protected]") {
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
SmtpClient smtp = new SmtpClient(server, port);
smtp.Credentials = new NetworkCredential(user, pw);
smtp.EnableSsl = true;
MailMessage Msg = new MailMessage();
Msg.From = new MailAddress(from);
Msg.To.Add(to);
Msg.Subject = subject;
Msg.IsBodyHtml = true;
Msg.Body = BuildBody(body);
smtp.Send(Msg);
}
}
然而,当完全相同的网站放在主机服务器上时,这将失败并出现以下错误:
System.Net.Mail.SmtpException: Failure sending mail. ---> **System.IO.IOException: Unable to read data from the transport connection: net_io_connectionclosed**.
at System.Net.Mail.SmtpReplyReaderFactory.ProcessRead(Byte[] buffer, Int32 offset, Int32 read, Boolean readLine)
at System.Net.Mail.SmtpReplyReaderFactory.ReadLines(SmtpReplyReader caller, Boolean oneLine)
at System.Net.Mail.SmtpReplyReaderFactory.ReadLine(SmtpReplyReader caller)
at System.Net.Mail.SmtpConnection.GetConnection(ServicePoint servicePoint)
at System.Net.Mail.SmtpTransport.GetConnection(ServicePoint servicePoint)
at System.Net.Mail.SmtpClient.GetConnection()
at System.Net.Mail.SmtpClient.Send(MailMessage message) --- End of inner exception stack trace ---
at System.Net.Mail.SmtpClient.Send(MailMessage message)
at MailSender.Send_New(String server, Int32 port, String body, String subject, String to, String from)
谁能给我一个提示,我可以做些什么来解决这个问题?
到目前为止,我尝试过:
- 我使用的端口现在是 587,但 465 或 25 给出相同的结果。
- 我尝试了几个 SecurityProtocolType 值,没有区别。
- 我尝试了许多不同的发送方式(System.Web.Mail、内置 WebMail 类等),结果相同。
- 我还检查了我的网站是否真正面向 .NET 4.8
- 搜索,我在 Google 和开发论坛上找到了很多文章,有很多提示,但似乎对我的情况没有任何帮助
- 我还联系了 Ionos 支持,他们似乎说他们没有问题,这是一个开发问题,所以他们帮不上忙......
现在我肯定需要帮助,因为现在已经超过 2 周了,我正在尝试没有成功的事情:(
提前感谢您的任何帮助!!
答: 暂无答案
评论