ASP.NET следующие / предыдущие кнопки для отображения одной строки в форме - PullRequest
1 голос
/ 18 июня 2009

Я ищу лучший способ реализовать это в ASP.NET.

На странице пользователь имеет возможность «пролистать» номера подписки с помощью кнопок «Далее» и «Предыдущий».

Когда пользователь нажимает кнопки «Следующая / Предыдущая», страница отправляется обратно (частично, AJAX), и сведения о подписке отображаются в форме. Одновременно отображается только одна строка.

Существует около 10 000 номеров подписки, поэтому, если мы сможем избежать загрузки всех номеров подписки при каждой обратной передаче, мы бы предпочли это.

Каким-то образом мне нужен счетчик, чтобы отслеживать общее количество предметов и текущую позицию, нет? Если это так, как бы вы сохранили их, чтобы они сохранялись при обратной передаче?

Заранее спасибо. Помощь очень ценится.

1 Ответ

3 голосов
/ 18 июня 2009

Вы можете создавать переменные свойств на странице и сохранять значения в ViewState страницы. Вот пример:

public int CurrentPosition
{
  get{return (int)(ViewState["CurrentPosition"] ?? 0);}
  set{ViewState["CurrentPosition"] = value;}
}

В этом примере между постбэками, полными или частичными, значение, сохраненное в свойстве CurrentPosition, будет сохранено.

Изначально CurrentPosition будет равно 0, затем в вашем запросе получите, используя WHERE ID = CurrentPosition + 1, затем увеличьте значение CurrentPosition на единицу. При переходе назад в результатах уменьшите на 1.

...