asp.net MVC:Пейджинг – установка значений «Предыдущая/Следующая страница» в ActionLinks?
-
18-09-2019 - |
Вопрос
Я пытаюсь реализовать простую разбивку по страницам на основе Как мне сделать нумерацию страниц в ASP.NET MVC?
Пейджинг работает нормально.
Однако сейчас я пытаюсь создать предыдущую и следующую ссылки, но не могу понять, как получить доступ к параметрам:
Мой маршрут выглядит так:
routes.MapRoute(
"Name",
"Controller/ActionName/{pageID}",
new { controller = "Controller", action = "ActionName" , pageID = 0 },
new { pageID = @"\d*"}
);
И моя следующая ссылка выглядит так:
<%=Html.ActionLink("next page", "ActionName", "Controller", new {pageID = pageID + 1 }, null) %>
Я получаю следующую ошибку:
Compiler Error Message: CS0103: The name 'pageID' does not exist in the current context
Как мне создать ссылки «Предыдущая/Следующая» (или, в данном случае, только следующую)?
Решение
Ошибка возникает на втором PageID в
new {pageID = pageID + 1 }, ...
Если вы хотите ссылаться на pageID таким образом, вам придется передать его как часть вашей модели.
Посмотрите следующий урок:
NerdDinner Шаг 8:Поддержка пейджинга
http://nerddinnerbook.s3.amazonaws.com/Part8.htm
Не связан с StackOverflow