При использовании ASP.NET Core MVC Razor Pages {страница} становится тем, что фактически является зарезервированным словом, так же, как {controller} и {action} при работе с традиционными контроллерами MVC и действиями.Чтобы обойти это, вы можете просто использовать что-то еще, чтобы представить номер страницы, желаемой при выполнении нумерации страниц.
Например:
[HttpGet("{pageIndex}/{itemsPerPage}", Name = "GetBookWithPagination")]
[ProducesResponseType(404)]
[ProducesResponseType(400)]
[ProducesResponseType(200, Type = typeof(PaginationResult<Book>))]
public async Task<ActionResult<PaginationResult<Book>>> Get(int page, int itemsPerPage, string filter)
{
try
{
var result = new PaginationResult<Book>();
result = bookRepo.RetrieveBookWithPagination(page, itemsPerPage, filter);
return result;
}
catch (Exception)
{
return BadRequest();
}
}