【问题标题】:Sendgrid System.ArgumentException: Unknown element: htmlSendgrid System.ArgumentException:未知元素:html
【发布时间】:2015-04-26 10:26:00
【问题描述】:

我刚刚将以下软件包更新到最新版本:

a) SendGrid.SmtpApi 更新到 1.3.1

b) SendGrid 更新到 6.0

突然 WebTransport.Deliver 方法不再存在 - 没问题,我已经切换到 DeliverAsync 方法,但现在我遇到了一个非常奇怪的错误,它应该从 2 年前开始修复:

System.ArgumentException:未知元素:html

这是可能感兴趣的堆栈跟踪的一部分:

System.ArgumentException:未知元素:html

在 SendGrid.ErrorChecker.CheckForErrors(HttpResponseMessage 响应, 流流)

在 SendGrid.ErrorChecker.d__0.MoveNext()

--- 从先前抛出异常的位置结束堆栈跟踪---

在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务 任务)

在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务 任务)

在 SendGrid.Web.d__0.MoveNext()

--- 从先前抛出异常的位置结束堆栈跟踪--- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务 任务)

这也是我的电子邮件发送代码的样子:

SendGridMessage emailMessage = new SendGridMessage();
emailMessage.AddTo(user.CompleteRegistrationModel.UserEmailAddress);
emailMessage.From = new MailAddress(ConfigurationHelper.EmailSenderAddress, ConfigurationHelper.EmailSenderName);
emailMessage.EnableTemplateEngine(ConfigurationHelper.ConfirmationEmailTemplateId);
emailMessage.AddSubstitution("-urlaplicatie-",
                new List<string>()
                {
                    String.Format("{2}{0}{1}", user.CompleteRegistrationModel.CompanyUrlPrefix,
                        ConfigurationHelper.DomainSuffix, ConfigurationHelper.ApplicationAccessProtocol)
                });
            emailMessage.AddSubstitution("-username-",
                new List<string>() {user.CompleteRegistrationModel.UserEmailAddress});
            emailMessage.AddSubstitution("-confirmationurl-",
                new List<string>() {user.CompleteRegistrationModel.UserEmailAddressConfirmationCompleteUrl});

            emailMessage.Subject = String.Format("{0}{1}", user.CompleteRegistrationModel.CompanyUrlPrefix,
                ConfigurationHelper.DomainSuffix);
            emailMessage.Text = " ";
            emailMessage.Html = " ";

            Web webTransport =
                new Web(new NetworkCredential(ConfigurationHelper.SendgridUsername,
                    ConfigurationHelper.SendgridPassword));

            try
            {
                await webTransport.DeliverAsync(emailMessage);
            }
            catch (InvalidApiRequestException exception)
            {
                Elmah.ErrorSignal.FromCurrentContext().Raise(exception);
            }

有人可以告诉我发生了什么吗?

谢谢你, 叶夫丁

【问题讨论】:

    标签: c# asp.net-mvc sendgrid


    【解决方案1】:

    请更新到 6.0.1,6.0.0 中有一个错误,它未列出。谢谢。

    https://github.com/sendgrid/sendgrid-csharp/blob/master/CHANGELOG.md

    【讨论】:

    • 谢谢!!!!它现在正在工作:-) 只是一个个人问题 - 我也在 sendgrid 论坛上添加了这个问题,没有人回答,这里的答案很快就来了......这是询问 sendgrid 相关问题的最佳地点,这里还是那里?再次感谢您!
    • 我很高兴它能正常工作。对于开源相关的问题,最好的地方是您正在使用的库的 github 存储库。我们的支持团队监控其他论坛,但在 stackoverflow 上,我们的社区团队和其他一些工程师也做出了贡献。
    • 我最近使用 6.1.0.0 得到了很多(尽管并非总是如此)。有任何想法吗? (到那时为止几个月都运行良好)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-19
    • 2019-04-27
    • 1970-01-01
    • 2013-06-02
    • 1970-01-01
    • 1970-01-01
    • 2013-05-22
    相关资源
    最近更新 更多