asp.net - 在 ASP.NET 中通过电子邮件恢复密码
问题描述
所以我试图在 ASP.NET Web 应用程序中实现密码恢复,但是出了点问题。我正在使用此代码-
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 MailAddress(
"mymail@gmail.com", "Joe S.");
myMessage.Subject = message.Subject;
myMessage.PlainTextContent = message.Body;
myMessage.HtmlContent = 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);
}
}
}
但
myMessage.From = new MailAddress(
"mymail@gmail.com", "Joe S.");
给出错误cs0029 无法将类型 system.Net.MailAdress 隐式转换为 SendGrid.Helpers.Mail.Adress
此外,var transportWeb = new Web(credentials);
未找到在线 Web。
有谁知道出了什么问题?SendGrid Nuget 包已安装。
解决方案
您的代码正在MailAddress
从System.Net
命名空间中提取。您需要从SendGrid.Helper.Mail
命名空间解决此问题。
或者你正在创造MailAddress
你应该通过的时候Address
;
有很多方法可以实现这一点,最简单的是;
myMessage.From = new SendGrid.Helpers.Mail.Address("mymail@gmail.com", "Joe S.");
查看 SendGrid 文档,您可能还想考虑使用EmailAddress
代替MailAddress
or Address
。
https://sendgrid.com/docs/for-developers/sending-email/v3-csharp-code-example/
var to = new EmailAddress("test@example.com", "Example User");
推荐阅读
- flutter - 当孩子没有参数来改变其布局时,如何使子小部件展开以填充堆栈内的父容器?
- java - 具有类型标识符的 API 的设计模式,用于确定要调用的下游服务
- c# - C#/vb.NET 绑定 DataGridView:将事件处理程序添加到 DataGridViewComboboxCell
- javascript - 删除以元音 js 开头的对象键
- excel - VBA Excel Error91 - 找不到对象变量 - PowerPoint 自动化 - 简单的错误?
- c# - 如何授权 .NET 5.0 / C# 应用程序在没有用户交互的情况下与 Microsoft 365 SharePoint Online 交互?
- css - 最新的 Google Chrome 版本破坏了 CSS
- java - Spring Boot 2.4.0 - 使用 BasicAuthenticationFilter 设置 SecurityContextHolder 会引发 IllegalStateException
- apache-spark - 从 dataproc 集群将数据加载到 bigquery 表时出错
- javascript - 适用于 PowerPoint 的 Office.js API(预览版)