DataGrid подкачки с постоянными данными - PullRequest
0 голосов
/ 01 октября 2009

В веб-части Sharepoint у меня есть DataGrid с подкачкой, которую я загружаю со всеми данными (без использования настраиваемой подкачки - настраиваемая подкачка потребует значительного изменения в текущем процессе и, вероятно, является одной из последних возможностей пытаться). Мне было интересно, возможно ли сделать так, чтобы он просматривал данные без повторной привязки источника данных к сетке в событии изменения индекса страницы? Если я удаляю текущие вызовы для повторной привязки данных, они остаются на первой странице, несмотря ни на что.

1 Ответ

0 голосов
/ 02 октября 2009

С сеткой данных, я думаю, вам нужно перепривязывать сетку всякий раз, когда вы хотите перейти на новую страницу.

"Типичный обработчик для события PageIndexChanged устанавливает свойство CurrentPageIndex для индекса страницы, которую вы хотите отобразить, а затем использует метод DataBind для привязки данных к элементу управления DataGrid."

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.datagrid.onpageindexchanged(VS.71).aspx

Если вы хотите избежать повторного запроса / извлечения данных из источника, вам нужно будет «кэшировать» данные между постбеками. Здесь есть различные варианты, каждый из которых имеет свои преимущества и недостатки.

Если размер данных не слишком велик и не чувствителен, вы можете просто поместить данные в viewstate при первой загрузке страницы и снова прочитать их при изменении индекса страницы. Другой вариант может включать использование Session для «кэширования» данных, хотя это может быть сложно, если не все сделано правильно, и, конечно, будет большая нагрузка на стороне сервера с этим методом (с различными величинами, в зависимости от того, находится ли Session в -Proc, State Server или база данных). Могут быть и другие способы «кэширования» данных, но это то, что вам нужно сделать в этом случае.

...