Objectdatasource
При работе с GridView + ObjectDataSource, я использую типичную схему для Paging, Sorting, Filtering:
Создаю 2 процедуры - одна для возврата DataSet, другая для количества записей, делаю C# обёртку - статические методы в DAL и потом устанавливаю параметры ObjectDataSource, например:
Всё остальное делает GridView, ObjectDataSource и процедуры, которые и делают Paging, Sorting, Filtering.
Таким образом я оптимизирую внутрисетевой трафик и скорость обработки.
Теперь я хочу подключить FastReport к этому ObjectDataSource.
Наконец вопрос ):
При выборке данных FastReport будет выбирать весь набор записей, а потом уже разбивать на страницы или будет также как и GridView получать данные страницами, используя фишки ObjectDataSource?
Почему возникает такой вопрос:
Мне нужно сделать отчёт, в котором теоретически могут быть миллионы записей, и не хотелось бы, чтобы FastReport каждый раз для формирования N-ой страницы, выбирал все эти миллионы записей.
Создаю 2 процедуры - одна для возврата DataSet, другая для количества записей, делаю C# обёртку - статические методы в DAL и потом устанавливаю параметры ObjectDataSource, например:
<asp:ObjectDataSource ID="odsOrders" runat="server" EnablePaging="True"
onselecting="odsOrders_Selecting" SelectCountMethod="GetOrdersCount"
SelectMethod="GetOrders" SortParameterName="sortExpression"
TypeName="CompanyName.Helpers.DALHelper">
<SelectParameters>
<asp:Parameter Name="param1" Type="Int32" />
<asp:Parameter Name="param2" Type="Int32" />
<asp:Parameter Name="param3" Type="Object" />
<asp:Parameter Name="param4" Type="Object" />
<asp:Parameter Name="param5" Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>
Всё остальное делает GridView, ObjectDataSource и процедуры, которые и делают Paging, Sorting, Filtering.
Таким образом я оптимизирую внутрисетевой трафик и скорость обработки.
Теперь я хочу подключить FastReport к этому ObjectDataSource.
Наконец вопрос ):
При выборке данных FastReport будет выбирать весь набор записей, а потом уже разбивать на страницы или будет также как и GridView получать данные страницами, используя фишки ObjectDataSource?
Почему возникает такой вопрос:
Мне нужно сделать отчёт, в котором теоретически могут быть миллионы записей, и не хотелось бы, чтобы FastReport каждый раз для формирования N-ой страницы, выбирал все эти миллионы записей.