SmtpClient.Send附件最大尺寸

时间:2011-03-10 11:19:14

标签: c# asp.net smtpclient

我正在尝试使用SmtpClient.Send()方法在asp.net页面中发送附件邮件。 它可以正常使用2mb文件。当我尝试7mb附件文件时,它说:

  

发送邮件失败。

使用SmtpClient.Send(message)方法发送邮件的最大大小是多少。 为什么会出现上述错误.....?

4 个答案:

答案 0 :(得分:8)

SmtpClientMailMessage的文档没有说明大小限制。很可能这是由您的SMTP服务器强制执行的。您应检查SMTP服务器配置的大小限制。

答案 1 :(得分:4)

我碰巧遇到了同样的错误,我发现这个网址包含有用的信息:

http://connect.microsoft.com/VisualStudio/feedback/details/544562/cannot-send-e-mails-with-large-attachments-system-net-mail-smtpclient-system-net-mail-mailmessage

显然,.NET 4 Framework存在一个缺陷,即只要附件大于3MB,邮件发送就会失败。

如果您应用上面链接中提供的修补程序,则可以解决问题。

希望它有用

答案 2 :(得分:0)

这取决于您的邮件发送提供商,如果您使用的是Gmail,那么它将是10 MB。

如果连接文件时连接中断,也可能发生这种情况。

答案 3 :(得分:0)

你可以在配置文件中包含大小

<configuration>
  <system.web>
    <compilation debug="true" strict="false" explicit="true" targetFramework="4.0"/>
    <httpRuntime maxRequestLength="1048576" />
    <customErrors m

  <system.webServer>
    <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="1073741824" />
      </requestFiltering>
    </security>
  </system.webServer>