访问剃刀页面路由数据

时间:2020-01-15 00:12:21

标签: asp.net-core razor-pages

我想获取剃须刀页面的路线数据,以根据需要的剃须刀页面在app.use中进行一些处理。如何获得所服务的剃须刀页面的名称/动作。在MVC中,我使用context.Request.RouteValues来访问控制器和操作方法。使用剃须刀页面时,能否请您指导我达到等效的水平。 在此先感谢

1 个答案:

答案 0 :(得分:0)

“剃刀”页面中没有控制器/动作。如果要访问路线数据,可以使用:

var datas = RouteData.Values;

//get page name/path 

var path  = RouteData.Values["page"];

如果您在@page中将路由数据参数定义在路由模板中:

@page "{title}"

您可以获得类似的值:

var title = RouteData.Values["title"];

此外,您还可以从HttpContext获取页面名称/路径:

var path = HttpContext.Request.Path;

如果您有处理程序来重定向网址,例如:

<a asp-page="Privacy" asp-page-handler="Menu2" asp-route-id1="p02" asp-route-id2="123">Menu 2</a> |

您可以使用:

var handler = HttpContext.Request.Query["handler"];