Я использую метод нумерации страниц для отображения результатов поиска, возвращенных из моей базы данных.
Я создаю Html.ActionLink для каждой дополнительной страницы, и мне интересно, как вы помещаете строку, которая была найдена, в ActionLink? Ниже приведена часть моего частичного представления, которым я заполняю div. Он идет после результатов, поэтому пользователь может выбрать другую страницу результатов.
<% if (Model.HasNextPage)
{ %>
<% for (var i = 1; i < Model.TotalPages; i++)
{ %>
<%= Html.ActionLink(i.ToString(), "MyPartialPage", "MyController", new { searchString = Cache[searchString], page = i }, new { @id = "SearchResults" })%>
<% } %>
<% } %>
MyController выглядит так:
public ActionResult SearchResults(string searchString, int? page)
{
var theResults = driverRepository.GetResults();
var searchResults = drivers.Where(q => q.Filename.Contains(searchString));
var paginatedDrivers = new PaginatedList<Driver>(searchResults, page ?? 0, pageSize);
return View("SearchResults", paginatedDrivers);
}
Есть текстовое поле и кнопка. Пользователь вводит поиск и нажимает кнопку, которая запускает некоторый JavaScript, который получает текст из текстового поля и соответственно публикует сообщения в SearchResults.
Я хочу сохранить то, что они искали, поэтому, когда я создаю свои ActionLinks, параметр поиска все еще присутствует.