SENDGRID电子邮件确认

时间:2014-10-24 22:57:14

标签: asp.net asp.net-identity sendgrid email-confirmation

我正在尝试使用SendGrid进行电子邮件验证。我尝试使用本教程http://goo.gl/77WXpT注册时遇到的错误是:

错误请求

描述:执行当前Web请求期间发生了未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.Exception:错误请求

来源错误:

      if (transportWeb != null)
      {
           await transportWeb.DeliverAsync(myMessage);
        }
        else

,identityConfig.cs的源代码是:

 public class EmailService : IIdentityMessageService
{
    public async Task SendAsync(IdentityMessage message)
    {
        await configSendGridasync(message);
    }
    // Use NuGet to install SendGrid (Basic C# client lib) 
    private async Task configSendGridasync(IdentityMessage message)
    {
        var myMessage = new SendGridMessage();
        myMessage.AddTo(message.Destination);
        myMessage.From = new System.Net.Mail.MailAddress(
                            "Joe@contoso.com", "Joe S.");
        myMessage.Subject = message.Subject;
        myMessage.Text = message.Body;
        myMessage.Html = message.Body;

        var credentials = new NetworkCredential(
                   ConfigurationManager.AppSettings["mailAccount"],
                   ConfigurationManager.AppSettings["mailPassword"]
                   );

        // Create a Web transport for sending email.
        var transportWeb = new Web(credentials);

        // Send the email.
        if (transportWeb != null)
        {
            await transportWeb.DeliverAsync(myMessage);
        }
        else
        {
            Trace.TraceError("Failed to create Web transport.");
            await Task.FromResult(0);
        }
    }
}

1 个答案:

答案 0 :(得分:0)

您的凭据可能存在问题。

如果您通过Windows Azure注册了SendGrid,则需要执行以下操作:

  1. 登录到您的Azure Portal
  2. 导航至Marketplace
  3. 找到并点击SendGrid应用
  4. 点击底部,点击Connection Info
  5. 使用列出的UsernamePassword
  6. 我最初的印象是我要使用我的Azure帐户密码,直到找到这个。希望这能够像对待我一样纠正你的问题。

相关问题