2009-08-18 1 views
0

Я использую объект ObjectDataSource с элементом управления ReportViewer 2008 и Linq to CSV. ODS имеет два параметра (SQL указывается в XSD-файле с помощью адаптера таблицы). Reportviewer занимает очень много времени, чтобы отобразить результат после нажатия кнопки для создания отчета. Это моя первая проблема. Несмотря на то, что он работает (большую часть времени), время обработки меня беспокоит, и последующие запросы, похоже, не меняют результаты, показанные на экране. Следующая проблема заключается в том, что когда я иду на экспорт ODS в CSV, я получаю исключение тайм-аута в методе выбора ODS (показано ниже). Это работает для ODS без параметров, но теперь кажется, что я добавил параметры, которые он не хочет сотрудничать. Я свеж от идей, любых мыслей?ObjectDataSource.Select with Parameters Time Out

<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 

ответ

0

К сожалению (или, к счастью, я полагаю, в этом случае - множество данных здесь). Я не нашел прямого решения этой проблемы. Вместо этого я использовал запрос (возможно, с помощью SQLAdapter или что-то в этом роде - он прошел некоторое время) и вручную указал параметры в этом бите кода, а затем, если я помню, предоставил источник данных отчета адаптер.