2012-11-08 153 views
0

我想使用asp.net发送电子邮件,我已经配置了我的SMTP服务并添加了127.0.0.1作为中继。我曾经到过我家的应用程序是成功的,但我安装在办公室它不能发送电子邮件为什么?使用asp.net发送电子邮件

这里是C#代码

MailMessage objemail = new MailMessage(); 
objemail.To.Add(new MailAddress("[email protected]")); 
objemail.From = new MailAddress(Request.Form["inputEmail"].ToString()); 
objemail.Subject = Request.Form["inputSubject"].ToString(); 
objemail.Body = "Dari: " + Request.Form["inputName"].ToString() + "\n\n" + 
       "Phone: " + Request.Form["inputPhone"].ToString() + "\n\n" + 
       Request.Form["inputMsg"].ToString(); 
objemail.IsBodyHtml = true; 
objemail.Priority = MailPriority.Normal; 

SmtpClient objSmtpClient = new SmtpClient(); 
objSmtpClient.Send(objemail); 

这里是web.config配置

<system.net> 
<mailSettings> 
    <smtp deliveryMethod="Network"> 
    <network host="127.0.0.1" port="25" userName="yyyy" password="xxxxx" /> 
    </smtp> 
</mailSettings> 
</system.net> 

我的办公室使用代理,是这个问题我无法发送电子邮件?请指教

+0

它抛出什么异常? – HackedByChinese

+0

通过在try/catch中包装并将异常详细信息写入txt文件来执行一些简单日志记录。否则,它可能是一堆东西。 – Hardrada

+0

没有错误,但我没有收到邮件 –

回答

-1

你可以试试这个:

objSmtpClient.EnableSsl = true 
0

可能端口号是尝试使用的端口号"587"一些错误,如下图所示:

private void SendEmail(string from, string to, string subject, string body) 
    { 
     MailMessage mail = new MailMessage(new MailAddress(from), new MailAddress(to)); 

     mail.Subject = subject; 
     mail.Body = body; 

     SmtpClient smtpMail = new SmtpClient("smtp.gmail.com"); 
     smtpMail.Port = 587; 
     smtpMail.EnableSsl = true; 
     smtpMail.Credentials = new NetworkCredential("[email protected]", "xxx"); 
     // and then send the mail 
     smtpMail.Send(mail); 
    } 
+0

我用localhost作为邮件服务器而不是gmail –

+0

然后试试这个http://blog.divergencehosting.com/2010/01/27/testing-email-from-localhost-with-aspnet -without的SMTP服务器/ – coder