无法在服务器上使用SMTP发送电子邮件

时间:2016-09-24 07:49:40

标签: c# email smtpclient

我正在使用smtp客户端发送电子邮件,但问题是,当我尝试发送电子邮件时,我的本地系统电子邮件已成功发送,但我在服务器上部署而不是电子邮件未发送。这是我的代码

 try
        {
            MailMessage mail = new MailMessage();
            mail.To.Add(receiver);
            mail.From = new MailAddress("lms.mannconsultant@gmail.com");
            mail.Subject = subject;
            mail.Body = body;
            mail.IsBodyHtml = true;
            if (attachment != null)
            {
                mail.Attachments.Add(attachment);
            }
            SmtpClient smtp = new SmtpClient();
            smtp.Host = "smtp.gmail.com";
            smtp.Credentials = new System.Net.NetworkCredential("xxxxx@gmail.com", "xxxxxx");
            smtp.EnableSsl = true;
            smtp.UseDefaultCredentials = false;
            smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
            smtp.Port = 587;
            smtp.Send(mail);
            return true;
        }
        catch
        {
            return false;
        }

1 个答案:

答案 0 :(得分:0)

可能有很多原因。通过查看您的代码,我建议您首先验证天气在服务器中执行此代码时生成的任何异常(日志异常)。这将有助于进一步调查。还要检查端口(587)您在代码中使用的服务器防火墙未阻止(如果在服务器中启用)。