我在C#中遇到SMTP身份验证问题

时间:2012-07-15 00:02:17

标签: c# smtp

我有一个MVC 3应用程序,我在新托管服务提供商上尝试的所有内容最终都会抛出此异常:

“/”应用程序中的服务器错误。 信箱不可用。服务器响应是:中继需要验证

我尝试使用

中的代码

How can I make SMTP authenticated in C#

有很多票,但我仍然有例外。

我的主机拥有可让我创建邮件帐户的典型面板。我不确定创建NetworkCredentials,我用什么作为用户名和密码?我一直在使用的是电子邮件地址和电子邮件帐户的密码。

这是我的代码:

public static void sendMail(Joiner request) {
  SmtpClient smtpClient = new SmtpClient();
  NetworkCredential basicCredential =
      new NetworkCredential("garbage@stopthedumpcoalition.org", "REDACTED");
  MailMessage message = new MailMessage();
  MailAddress fromAddress = new MailAddress("garbage@stopthedumpcoalition.org");

  smtpClient.Host = "mail.stopthedumpcoalition.org";
  smtpClient.UseDefaultCredentials = false;
  smtpClient.Credentials = basicCredential;

  message.From = fromAddress;
  message.Subject = "Join the Coalition request from - " + request.FirstName + " " + request.LastName;
  //Set IsBodyHtml to true means you can send HTML email.
  message.IsBodyHtml = true;
  message.Body = "Name: " + request.FirstName + " " + request.LastName + "<br>"
        + "EMail: " + request.Email + "<br>"
        + "Wants to Volunteer: " + request.Volunteer.ToString() + "<br>"
        + "Organization: " + request.Organization + "<br>"
        + "Wants to become a Partner: " + request.Partner.ToString() + "<br>"
        + "Comments: " + request.Comments;
  message.To.Add("nivram509@gmail.com");

  smtpClient.Send(message);
}

1 个答案:

答案 0 :(得分:0)

谢谢萨尼。它甚至比那更愚蠢。我的网站主机的网络面板有两个用于更改密码的文本框,我填写了两个文本框并点击保存。

它还有一个“更改密码”的复选框,我从未注意到它。

所以我的密码错了。代码很好。 :)