我使用的Web应用程序的.NET酷睿2“剃刀页”格式。 它允许您定义的URL变量名在顶部的简单指令映射:
@page "{personId:int?}"
以上,例如,将映射的URL /Person/Index/123
到IndexModel.OnGetAsync(int personId)
功能,使得personId
将具有123的值。
然而,我注意到,这些价值似乎被自动添加到他们可以任意网址,如果页面上存在的链接。 如果我以下内容添加到索引页:
<a asp-page="/Person/Details">Details</a>
...这就是产生实际的HTML是:
<a href="/Person/Details/123">Details</a>
......这意味着,因为这两个指标和详细信息页面具有相同的指令在顶部,价值personId
是隐含在它们之间传递。
有什么办法防止这种情况,使asp-page="/Person/Details"
会简单地重定向到详细信息页面,而不经过任何价值personId
?