Sendgrid System.ArgumentException:未知元素:html
Sendgrid System.ArgumentException: Unknown element: html
我刚刚将以下软件包更新到最新版本:
a) SendGrid.SmtpApi 更新到 1.3.1
b) SendGrid 更新至 6.0
然后 WebTransport.Deliver 方法突然不存在了 - 没问题,我已经切换到 DeliverAsync 方法但现在我得到一个非常奇怪的错误,它应该在 2 年前修复:
System.ArgumentException: Unknown element: html
这是您可能感兴趣的堆栈跟踪的一部分:
System.ArgumentException: Unknown element: html
at SendGrid.ErrorChecker.CheckForErrors(HttpResponseMessage response,
Stream stream)
at SendGrid.ErrorChecker.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task
task)
at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)
at SendGrid.Web.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown --- at
System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task
task)
这也是我的电子邮件发送代码的样子:
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);
}
有人能告诉我发生了什么事吗?
谢谢,
埃夫丁
请更新到6.0.1,6.0.0有bug,不公开。谢谢
https://github.com/sendgrid/sendgrid-csharp/blob/master/CHANGELOG.md
我刚刚将以下软件包更新到最新版本:
a) SendGrid.SmtpApi 更新到 1.3.1
b) SendGrid 更新至 6.0
然后 WebTransport.Deliver 方法突然不存在了 - 没问题,我已经切换到 DeliverAsync 方法但现在我得到一个非常奇怪的错误,它应该在 2 年前修复:
System.ArgumentException: Unknown element: html
这是您可能感兴趣的堆栈跟踪的一部分:
System.ArgumentException: Unknown element: html
at SendGrid.ErrorChecker.CheckForErrors(HttpResponseMessage response, Stream stream)
at SendGrid.ErrorChecker.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at SendGrid.Web.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
这也是我的电子邮件发送代码的样子:
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);
}
有人能告诉我发生了什么事吗?
谢谢, 埃夫丁
请更新到6.0.1,6.0.0有bug,不公开。谢谢
https://github.com/sendgrid/sendgrid-csharp/blob/master/CHANGELOG.md