Есть GridView
и DataSource
, как сделать так, чтобы пейджинг в GridView
не загружал заново все данные
ASP.NET: пейджинг в GridView
Новые ответы
Элемент управления ObjectDataSource
может поддерживать дополнительные возможности сортировки и разбиения по страницам путем передачи сведений сортировки и разбиения в запросах от элемента управления с привязкой к данным, например, элемента управления GridView
к объекту данных для обработки. Затем объект источника данных или сам элемент управления источником данных может отсортировать данные и вернуть их на страницы.
Вот пример оформления ObjectDataSource
<asp:ObjectDataSource ID="dataSourceCustomer" runat="server" TypeName="Some.DB"
SelectMethod="GetCustomer" EnablePaging="true" SelectCountMethod="GetCustomersCount">
<SelectParameters>
<asp:ControlParameter Name="maximumRows" ControlID="gridView" PropertyName="PageSize" />
<asp:ControlParameter Name="startRowIndex" ControlID="gridView" PropertyName="PageIndex"/>
</SelectParameters>
</asp:ObjectDataSource>
Свойство SelectCountMethod
задает метод бизнес-объекта, который используется для извлечения общего числа строк с целью обеспечения поддержки разбиения источника данных по страницам. Свойство SelectCountMethod
оценивается, только если для свойства EnablePaging
задано значение true
.
Метод GetCustomer
принимает в качестве параметров maximumRows
и startRowIndex