当使用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页面
答案 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>