System.Net.Mail.SmtpException:操作已超时。 asp.net中的错误使用godaddy托管发送邮件代码

时间:2013-02-12 08:23:39

标签: c# asp.net sendmail smtpclient

我正在使用以下代码安静使用godaddy托管发送邮件。

但抛出 System.Net.Mail.SmtpException: The operation has timed out.

protected void sendmail()
    {
        var fromAddress = "frommailid@site.com";
        // any address where the email will be sending
        var toAddress = "to@gmail.com";
        //Password of your gmail address
        const string fromPassword = "mypassword";
        // Passing the values and make a email formate to display
        string subject = "HI test mail ";
        string body = "From: pro@e-hotelspro.com";
        // smtp settings
        var smtp = new System.Net.Mail.SmtpClient();
        {
            //smtp.Host = "relay-hosting.secureserver.net";
            smtp.Host = "smtpout.secureserver.net";
            smtp.Port = 80;
            smtp.EnableSsl = true;
            smtp.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
            smtp.Credentials = new NetworkCredential(fromAddress, fromPassword);
            smtp.Timeout = 20000;
        }
        // Passing values to smtp object
        smtp.Send(fromAddress, toAddress, subject, body);
    }

2 个答案:

答案 0 :(得分:8)

我认为这是System.Net.Mail的着名SSL问题

System.Net.Mail with SSL to authenticate against port 465

您应该使用一些外部库或等到Microsoft在框架版本中包含此功能

答案 1 :(得分:-6)

只需改变:

smtp.Timeout = 20000;

smtp.Timeout = 2000000;