小编Pra*_* R.的帖子

在控制器中生成<a>链接以发送电子邮件

我正在实现一个密码重置系统,虽然代码工作正常,但是对用户来说存在一个小问题.该系统通过生成通过电子邮件发送的一次性加密安全令牌来工作.问题是,要使用这些令牌,用户必须单击他们收到的电子邮件中的链接.这本身不是问题,但有问题的链接看起来像这样:

http://www.example.com/Account/ResetPassword/184?t=BC2EveZtRl3wjbONboalzlUVwUpp%252BYaiKvbsZ6aPPYE%253D
Run Code Online (Sandbox Code Playgroud)

用户不愿意点击此链接,因为它很大且看起来很吓人; 他们认为这是一个恶意的第三方窃取他们的密码或给他们一个病毒或东西的伎俩.

如果这是一个视图,我会用它@Html.ActionLink()来生成一个漂亮的<a>链接,上面写着"点击这里重置你的密码",这很好.但是,在一个控制器中,我无法访问该方法,除非我实例化一个HtmlHelper需要ViewData的东西,这导致需要实例化的整个链条以伪造一些我不会使用的东西,并且我看到的每个地方都说这是不好的做法,我不应该这样做.

<a>在ASP.NET MVC中,在控制器代码中生成整洁链接的最简洁方法是什么?

html hyperlink asp.net-mvc-routing asp.net-mvc-4 asp.net-core-2.0

0
推荐指数
1
解决办法
1016
查看次数