ObjectDataSource.Select с параметрами Time Out
Я использую ObjectDataSource с элементом управления ReportViewer 2008 и Linq to CSV. У ODS есть два параметра (SQL прописан в XSD-файле с табличным адаптером). Просмотр отчета занимает очень много времени после нажатия кнопки для создания отчета. Это моя первая проблема. Хотя это работает (большую часть времени), время обработки меня беспокоит, и последующие запросы, похоже, не меняют результаты, показанные на экране. Следующая проблема заключается в том, что при экспорте ODS в CSV я получаю исключение тайм-аута для метода выбора ODS (показан ниже). Это работает для ODS без параметров, но похоже, что теперь я добавил параметры, которые он не хочет взаимодействовать. У меня нет идей, есть мысли?
<asp:ObjectDataSource ID="obsGetDataAllCustomers" runat="server"
SelectMethod="GetDataAllCustomers"
TypeName="my.myAdapter.AllCustomers"
OldValuesParameterFormatString="original_{0}" >
<SelectParameters>
<asp:ControlParameter ControlID="StartDate" Name="Start" PropertyName="Text"
Type="DateTime" />
<asp:ControlParameter ControlID="EndDate" Name="_End" PropertyName="Text"
Type="DateTime" />
</SelectParameters>
</asp:ObjectDataSource>
После нажатия кнопки, чтобы просмотреть отчет -
rvAllCustomers.LocalReport.Refresh()
Экспорт в CSV (добавление элементов, возвращаемых в список, который затем обрабатывается рабочим кодом) -
For Each dr As DataRow In CType(obs.Select(), DataView).Table.Rows
l.Add(New FullOrderOutput(dr))
Next
1 ответ
К сожалению (или, к счастью, я полагаю, что в этом случае - множество данных здесь), я не нашел прямого решения этой проблемы. Вместо этого я использовал запрос (возможно, с использованием SQLAdapter или чего-то в этом роде - это было давно) и указывал параметры вручную в этом фрагменте кода, а затем, если я помню, предоставил источник данных отчета адаптер.