C# 来自电子邮件的ASP.NET MVC超链接
在我的ASP.NET MVC web应用程序中,我设置了密码恢复功能,所有功能都很好,但是超链接将无法正确显示 它打印出整个url,而不是我想要的文本,例如“here” 这是我的代码问题还是电子邮件问题C# 来自电子邮件的ASP.NET MVC超链接,c#,html,asp.net-mvc,C#,Html,Asp.net Mvc,在我的ASP.NET MVC web应用程序中,我设置了密码恢复功能,所有功能都很好,但是超链接将无法正确显示 它打印出整个url,而不是我想要的文本,例如“here” 这是我的代码问题还是电子邮件问题 string code = await UserManager.GeneratePasswordResetTokenAsync(user.Id); var callbackUrl = Url.Action("ResetPassword", "Account", new { userId =
string code = await UserManager.GeneratePasswordResetTokenAsync(user.Id);
var callbackUrl = Url.Action("ResetPassword", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);
await UserManager.SendEmailAsync(user.Id, "Holiday Tracker Reset Password", "Please reset your password by using the following link. Copy and paste it into the url. <a href=\"" + callbackUrl + "\">here</a>");
return RedirectToAction("ForgotPasswordConfirmation", "Account");
理想情况下,我希望用户不必将链接粘贴到url栏中,而是能够单击超链接。听起来您的电子邮件是以纯文本而不是HTML格式发送的 您可以通过设置MailMessage对象的
IsBodyHtml
属性来解决此问题。就你而言:
msg.IsBodyHtml = true;
此处记录了这一点:也许您没有将电子邮件正文设置为HTML而不是纯文本?我们看不到实际创建邮件的代码。我已将发送电子邮件操作添加到问题中。但我不确定在哪里设置为HTML
msg.IsBodyHtml = true;