gpt4 book ai didi

asp.net - 如何在 ASP.NET Core 中为电子邮件创建动态链接

转载 作者:行者123 更新时间:2023-12-04 15:40:09 26 4
gpt4 key购买 nike

我想问一下。我使用 asp.net core 2.0 构建了一个简单的电子邮件发件人,我想发送一封带有链接的电子邮件,以将收件人重定向到我的网页,如电子邮件身份验证,但我不知道如何制作回调 URL。

我用:

<a href='https://"+Request.Scheme+"/Users/Userrole'>Click Here</a>

但电子邮件中的链接是 http:/Users/Userrole

请告诉我如何获取我页面的动态 URL,因为使用 Localhost:443xx/User/Userrole 不优雅并且在我的本地计算机上运行时不起作用

编辑,执行此操作的非常简单的方法是 <a href='https://"+this.Request.Host+"/Users/Userrole'>Click Here</a>

感谢 FrustatedDeveloper 的回答

最佳答案

Asp.Net 核心

在 Asp.Net Core 中,您可以使用以下方法获取 URL:

var url = $"{Context.Request.Scheme}://{Context.Request.Host}{Context.Request.Path}";
var link = $"<a href='{url}'>Click here</a>";

如果你需要获取查询字符串那么你可以使用:

var queryString = Context.Host.QueryString;

请检查以下资源:HttpRequest .

如果您包含using Microsoft.AspNetCore.Http.Extensions,那么您还可以使用:

var url = httpContext.Request.GetEncodedUrl();

或者

var url = httpContext.Request.GetDisplayUrl();

原答案(Asp.Net/MVC框架)

要创建动态 URL,您可以使用 UrlHelper @Url.Action("ActionName", "ControllerName") 以及域的 Request.Url.AuthorityRequest.Url.Scheme对于方案(使用 http 或 https)。

var url = $"{Request.Url.Scheme}://{Request.Url.Authority}{@Url.Action("UserRole","Users")}";
var link = $"<a href='{url}'>Click here</a>";

假设您的站点有一个域www.example.com,这将产生如下 URL:

https://www.example.com/users/userrole

以上使用string interpolation组合字符串变量。

关于asp.net - 如何在 ASP.NET Core 中为电子邮件创建动态链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58092908/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com