Пагинация с сохранением предыдущих параметров запроса
Подскажите, пожалуйста, куда копать. Есть форма Razor Page для отображения данных из БД, на которой два элемента select для выбора данных за конкретный год/месяц. При выборе элементов из списка эти данные добавляются в Request.Query.

Для пагинации добавил ViewModel, а также кнопки на форму.

Но при нажатии на кнопку Next, параметры запроса(year и month) удаляются и добавляется только параметр page (т.е. выбираются данные уже не за конкретный год/месяц).
Пытался взять их из класса Context.Request.Query, но после нажатия на кнопку Next, они уже удалены из него.
Часть кода RazorPage c пагинацией.
@{
var yearQuery = Context.Request.Query.FirstOrDefault(p => p.Key == "year").Value;
var routeBack = new Dictionary<string, string>
{
{ "page", (Model.PageViewModel.PageNumber - 1).ToString() },
{ "year", yearQuery},
};
var routeNext = new Dictionary<string, string>
{
{ "page", (Model.PageViewModel.PageNumber + 1).ToString() },
{ "year", yearQuery},
};
}
<a asp-action="Statistics"
asp-route-page="@routeBack"
class="btn btn-outline-dark @hasPreviousPage">
Back
</a>
<a asp-action="Statistics"
asp-route-page="@routeNext"
class="btn btn-outline-dark @hasNextPage">
Next
</a>
ViewModel для пагинации:
public class PageViewModel
{
public int PageNumber { get;}
public int TotalPages { get;}
public int? Year { get; }
public string Month { get; }
public PageViewModel(int count, int pageNumber, int pageSize, int? year, string month)
{
PageNumber = pageNumber;
TotalPages = (int)Math.Ceiling(count / (double)pageSize);
Year = year;
Month = month;
}
public bool HasPreviousPage => PageNumber > 1;
public bool HasNextPage => PageNumber < TotalPages;
}