在带有 .NET 3.5 的 Windows 控制台应用程序中(我将现有的 .NET 2.0 应用程序更改为 .NET 3.5)
我有一个奇怪的问题,发送电子邮件的代码工作几次(可能是 5 到 10 次)。
几次后,它无法发送带有消息“发送邮件失败”的电子邮件。重新启动系统后,相同的代码可以工作。(这不是生产中的预期解决方案)。
这是一段代码,我觉得在某个地方我关闭了这个 SmtpClient 连接。所以我将客户端设置为 null 并调用 GC.Collect ,但没有帮助我。
请帮忙
private static void SendEmail(MailMessage msg)
{
SmtpClient client = new SmtpClient(GetSMTPServer(), GetSMTPPort());
client.Credentials = CredentialCache.DefaultNetworkCredentials;
client.EnableSsl = false;
client.ServicePoint.MaxIdleTime = 1;
//client.Timeout = GetSMTPTimeout(); 30000000
client.Send(msg);
client = null;
GC.Collect();
}