【问题标题】:Unable to send Email Using SmtpClient in asp.net无法在 asp.net 中使用 SmtpClient 发送电子邮件
【发布时间】:2014-12-29 13:39:02
【问题描述】:

如果增加超时属性,我将无法在服务器中发送电子邮件。

//set the SMTP info
                SmtpClient smtp = new SmtpClient();
                smtp.Host = strServer;  //IP Mail Server
                smtp.Timeout = 70 * 60 * 1000;
                smtp.Port = Convert.ToInt16(Port); //Port
                smtp.Credentials = new System.Net.NetworkCredential(FromAddress, strPassword);       
                //send the email
                smtp.Send(Msg);

在我的应用程序中,我想向近 1000 人发送“B”日邮件。所以我会向那些过生日的人发送电子邮件,并将“密件抄送”发送给其他近 1000 名员工。如果我不添加密件抄送,它工作得很好。如果我添加密件抄送(1000 人),它会给出错误,如“暂停”。我增加了将近 1 小时的时间来克服这个问题。我知道这不是一个好习惯,但是当我添加它时,它在本地而不是在服务器中工作。在服务器中它给出错误“失败结束邮件”。假设我将超时时间减少到 10 分钟,它没有给出任何异常但没有收到邮件。我想知道我在这里遗漏了什么?这是服务器配置问题..?请帮我解决这个问题

【问题讨论】:

  • 尝试将这 1000 人添加到群组中并向群组发送电子邮件。
  • @Maheep 首先这 1000 个人在一个组中,然后它不起作用。所以我一一添加了密件抄送。

标签: c# asp.net email smtpclient


【解决方案1】:

这是因为一次添加了太多人。尝试在网络浏览器上对您的电子邮件做同样的事情,它不允许您发送电子邮件。

要解决此问题,请尝试在 1000 封电子邮件中创建多个组,例如 100 或 200 人的组,然后将邮件发送到这些组。

注意 1)检查防火墙设置是否关闭 2)检查是否安装了防病毒软件,在发送电子邮件时,防病毒软件会询问是否允许,或者您可以进入防病毒设置并禁用邮件检查选项

【讨论】:

  • 我也试过了。每次发送电子邮件时,我都会将 100 人放入密件抄送。但是当我这样做时,我会得到一个像 ATT0005 这样的附件文件。第二次我得到一个文件 第三次 2 文件 4 次 3 文件这样。但在本地密件抄送中与 1000 人合作
  • 请清除我的两个疑问:-1)“但在本地密件抄送中与 1000 人一起工作”是什么意思 2)作为附件,您必须清除附件列表,否则在每个附件添加您将获得增加的附件数量。
  • i)嗨,当我在本地系统中测试此应用程序时,它工作正常。2) 我没有在电子邮件中添加任何附件
  • 如果应用程序在本地系统中运行正常,问题出在哪里?
  • 在服务器中出现“发送邮件失败”之类的错误。在服务器中它不工作。
【解决方案2】:

我想分享我发送电子邮件的经验。我也曾经发送过 B-Day 电子邮件,但在我的情况下,通常有 100-150 人并且所有邮件都成功发送。我为此创建了一个 Web 服务,其唯一任务就是发送电子邮件。但是在电子邮件开始成功发送之前,我们在本地机器上进行了测试,效果很好,但是当我们在服务器上测试它时,我遇到了同样的问题,导致失败的原因是我们在 .Net 框架 2.0 中部署了我们的 Web 服务,而不是我们将其更改为 4.0并用 10000,5000,1000 封电子邮件再次对其进行了测试,并非所有电子邮件都运行良好,但大多数电子邮件都到达了目的地。另外还要提一提的是,我们发送电子邮件的地址受到电子邮件服务器中网络部门的限制只发送 100 封电子邮件。同时尽量避免从一个发件人和一个电子邮件服务器发送太多电子邮件,因为您可能会被列入黑名单。

总结

  • 首先检查您是否使用 .Net framework 2.0,如果是 切换到 4.0。
  • 确保网络部门没有限制 电子邮件服务器以及您用作发件人的地址。
  • 将所有代码放在 using 语句中以确保对象被释放。
  • 分块发送电子邮件(一次大约 100 封)。

    using() { //Place you email sending code here. }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-11
    • 2010-11-21
    • 1970-01-01
    • 2020-03-20
    • 1970-01-01
    • 2013-12-04
    • 2015-02-26
    相关资源
    最近更新 更多