asp-page标签助手异常:编辑产品带参链接无法正常工作
ASP.NET Core Page Tag Helper 带参数跳转失效的解决办法
你直接在asp-page属性中拼接查询字符串的写法不符合Tag Helper的使用规范,这就是跳转失效的原因。正确的传参方式如下:
- 若EditProduct页面使用约定路由(比如页面顶部定义了
@page "{id:int}"),使用asp-route-id传递参数:
<a asp-page="/EditProduct" asp-route-id="8">B</a>
- 若只是传递普通查询参数(路由未定义该参数),同样使用
asp-route-*格式指定参数:
<a asp-page="/EditProduct" asp-route-Id="8">B</a>
原理:Page Tag Helper会基于asp-page指定的页面路径,结合asp-route-*系列属性自动生成正确的URL,直接在asp-page中拼接?Id=8会被识别为页面路径的一部分,无法解析为参数,因此导致跳转失败。
内容的提问来源于stack exchange,提问作者user123456
相关产品推荐
相关产品推荐

