2010-06-09 83 views
0

我梦想创造它的工作原理是这样控制的:自定义数据源扩展

<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,然后将它们载入完成后面的代码同样的事情一个DataViewRowFilter。我们的目标是将多个DataView s用于一个DataSource,以及我希望应用于DataSource的选定部分的任何特殊过滤器。我可以想象延长这个更强大。

我试图在thisthis峰值,但在几点上有点困惑。

目前,我的主要问题是不确定在哪里抓取DataSource的输出数据,所以我可以将其粘贴到DataTable

回答

0

的代码我被困在:

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

第二行是可能不必要,因为最初的目标是把一个DataSourceDataView

当然,查找这个东西告诉我,SqlDataSource已经有FilterExpression ...