Доступ к данным маршрута страницы бритвы - PullRequest
0 голосов
/ 15 января 2020

Я хотел бы получить данные маршрута для страницы бритвы, чтобы выполнить некоторую обработку в app.use в зависимости от запрашиваемой страницы бритвы. Как я могу получить имя / действие для страницы бритвы, которую обслуживают. В MVC я использовал context.Request.RouteValues, чтобы добраться до контроллера и методов действия. Можете ли вы привести меня к эквиваленту при использовании страниц бритвы. Заранее спасибо

1 Ответ

0 голосов
/ 15 января 2020

На страницах Razor отсутствует контроллер / действие. Если вы хотите получить доступ к данным маршрута, вы можете использовать:

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;

Если у вас есть обработчик для перенаправления URL, например :

<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"];
...