.NET 5:可以在 MVC 应用程序的 .cshtml 文件中创建指向注册剃刀页面的链接吗?请阅读说明

Posted

技术标签:

【中文标题】.NET 5:可以在 MVC 应用程序的 .cshtml 文件中创建指向注册剃刀页面的链接吗?请阅读说明【英文标题】:.NET 5: It is possible to create a link to the Registration Razor Page inside a .cshtml file of an MVC application? Please read explanation 【发布时间】:2021-12-14 19:20:38 【问题描述】:

所以我有这个 .NET 5 MVC 应用程序。但是它使用的是 Microsoft 标识。当我搭建身份页面时,它们是剃须刀页面,无论如何都可以正常工作。

但是,我需要将注册页面的链接从登录表单中删除到应用程序内部。我说,嗯,这很简单,我只是在我的自定义用户视图中链接到剃须刀页面。但是我找不到这样做的方法。

我已经尝试了围绕这一行的各种代码:

<a asp-page="/Identity/Account/Register">Register a New User</a>

“/Identity/Account/Register”路径不是我的发明。是我在测试点击登录页面内的注册链接时在localhost之后在浏览器中看到的url。

我尝试提供完整的文件夹路径,但也没有用:(

这是我的身份文件结构:

我试图链接注册页面的 .cshtml 是用户文件夹中的这个索引文件:

我如何做到这一点?

提前谢谢你。

【问题讨论】:

LoginUrl 在CookieOptions 中指定。然后你可以在任何你想要的地方注入IOptions&lt;CookieAuthenticationOptions&gt;并使用这个LoginUrl 【参考方案1】:

你需要在你的锚标签中添加 asp-area 标签助手。

<a asp-area="Identity" asp-page="/Account/Register">Register a New User</a>

你也可以试试

<a asp-page="/Account/Register">Register a New User</a>

我已经回答了类似的问题here。

【讨论】:

第一行完美无缺。谢谢! 很高兴知道我可以帮助你。 :)

以上是关于.NET 5:可以在 MVC 应用程序的 .cshtml 文件中创建指向注册剃刀页面的链接吗?请阅读说明的主要内容,如果未能解决你的问题,请参考以下文章

经典ASP.NET MVC3.0入门详解

从 .NET 4.5 MVC 4 升级到 .NET 4.5.2 MVC 5.2

如何使用 ASP.NET 5 MVC 6 保护 Web API

MVC 5 (.NET 4.5) 应用程序的最佳 ORM

我们可以在不使用 ASP.Net Identity 的情况下使用 MVC 5 提供的 cookie 身份验证吗?

在 IIS 上使用 .NET Core 运行 ASP.NET 5 (MVC 6)