Разбиение на страницы в веб-части ListViewByQuery - PullRequest
2 голосов
/ 13 мая 2011

Я написал веб-часть, которая использует ListViewByQuery для отображения элементов на основе предоставленного запроса.Все работает отлично, кроме нумерации страниц.

Когда я указываю rowLimit, он отображает только первый набор записей, а управление разбиением на страницы не видно, поэтому я не могу перейти к следующему набору записей.

Ответы [ 2 ]

1 голос
/ 30 октября 2011

Проблема в том, что когда вы нажимаете на перемещаемую кнопку 1-2, она выполняет обратную передачу, добавляя некоторые значения в строку запроса.

Я случайно удаляю строку запроса view=. из URL и нажимаю клавишу Enter, чтобы получитьрезультаты.

Итак, что я сделал так:

if (!string.IsNullOrEmpty(Request.QueryString["View"]))

{
   string queryString = string.Empty;
   foreach (string key in Request.QueryString.Keys)
   {
     if (key.ToLower() != "view")
       queryString += key + "=" + Request.QueryString[key] + "&";
   }

SPUtility.Redirect(Request.Url.GetLeftPart(UriPartial.Path), SPRedirectFlags.Default, HttpContext.Current,queryString);
 return;

}
0 голосов
/ 13 февраля 2013

Отличный ответ Мухаммеду - после удаления ключа просмотра и значения ссылка работает нормально.
Однако линия SPUtility.Redirect(.. не работает для меня.
Вместо этого, когда я поместил ваш код в CreateChildControls (), я использовал:

 this.Context.Response.Redirect(this.Context.Request.Url.GetLeftPart(UriPartial.Path) + "?" + queryString);
...