ASP .NET Core 2.1 Razor Pages锚标记帮助器为ASP路由生成空的href

时间:2018-07-26 09:22:37

标签: c# asp.net-core

当使用asp-route属性时,我的锚标记助手会生成空的href。我确定我缺少什么。

启动-> ConfigureServices:

services.AddRouting();
services.AddMvc()
            .AddRazorPagesOptions(options =>
            {
                options.Conventions.AddPageRoute("/user/signin", "signin");
            })
            .SetCompatibilityVersion(CompatibilityVersion.Version_2_1);

然后在剃刀视图中:

 <a asp-route="signin">Sign In</a>

哪个生成

<a href="">Sign In</a>

如果我导航到/ signin,则可以正确访问/ user / signin页面

1 个答案:

答案 0 :(得分:2)

asp-route标记帮助器期望提供的值为named route

  

asp-route属性用于创建直接链接到命名路由的URL。

如果要链接到ASP.NET Core Razor页面,则可以使用asp-page

<a asp-page="/user/signin">Sign In</a>

这将生成如下内容:

<a href="/signin">Sign In</a>