asp.net MVC:Пейджинг – установка значений «Предыдущая/Следующая страница» в ActionLinks?

StackOverflow https://stackoverflow.com/questions/1875298

Вопрос

Я пытаюсь реализовать простую разбивку по страницам на основе Как мне сделать нумерацию страниц в 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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top