2010-06-09 1 views
0

Я мечтаю о создании управления, который работает что-то вроде этого:пользовательских DataSource Extender

<asp:SqlDataSource 
     id="dsFoo" 
     runat="server" 
     ConnectionString="<%$ ConnectionStrings:conn %>" 
     SelectCommandType="StoredProcedure" 
     SelectCommand="cmd_foo"> 
</asp:SqlDataSource> 

<Custom:DataViewSource 
    id="dvFoo" 
    runat="server" 
    rowfilter="colid &gt; 10" 
    datasourceid="dsFoo"> 
</Custom:DataViewSource> 

я могу сделать то же самое в коде позади, выполнив cmd_foo, загружая результаты в DataTable, а затем загружать их в a DataView с RowFilter. Целью было бы иметь несколько DataView s для одного DataSource с любыми специальными фильтрами, которые я хочу применить к участку выбора DataSource. Я мог бы предположить, что это будет более мощным.

Я попытался достигнуть максимума в this и this, но немного перепутал несколько пунктов.

В настоящее время моя основная проблема заключается в том, что не удается найти выходные данные DataSource, чтобы я мог вставить его в DataTable.

ответ

0

Код я застрял на:

DataView dv = dsFoo.Select(DataSourceSelectArguments.Empty) as DataView; 
DataTable dt = dv.ToTable() 

Вторая линия, скорее всего, нет необходимости, поскольку первоначальная цель была, чтобы превратить DataSource в DataView.

Конечно, глядя вверх этот материал говорит мне, что SqlDataSource уже FilterExpression ...