Дружественный URL для RazorPage со строкой запроса - PullRequest
0 голосов
/ 18 февраля 2020

Я хотел бы создать дружественные маршруты, которые сопоставляются с различными значениями строки запроса одной страницы Razor и ее базового обработчика GET. Я был бы в порядке с переключением строки запроса, чтобы быть частью маршрута также. Идея в том, что у нас есть одна страница, которая загружает список файлов и может фильтровать. Я бы предпочел, чтобы URL был более простым. Если это невозможно, я могу просто go с /Files/In или /Files/Out

Пример

/Files?direction=In  -> /In
/Files?direction=Out -> /Out

Есть ли способ сделать что-то подобное?

1 Ответ

1 голос
/ 19 февраля 2020

Вы можете использовать параметры данных маршрута, которые определены в шаблоне маршрута как часть директивы @page в файле .cs html:

@page "{direction?}"

Затем вы можете получить доступ к значению параметра маршрута в OnGet метод вашей файловой страницы:

public void OnGet(string direction)
{
     if (!string.IsNullOrEmpty(direction))
     {
           //filter files based on direction

     }
}

Вы можете передать значение направления как /Files/In или /Files/Out, без фильтра напрямую используйте /Files.

...