自定义DataSource Extender

时间:2010-06-09 19:37:07

标签: asp.net datasource dataview

我梦想创建一个像这样的控件:

 <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,然后将它们加载到DataView RowFilter。目标是为一个DataView提供多个DataSource s,以及我希望应用于DataSource的选择部分的任何特殊过滤器。我可以想象将其扩展为更强大。

我尝试在thisthis达到峰值,但在几点上有点困惑。

目前,我的主要问题是不确定在何处获取DataSource的输出数据,因此我可以将其粘贴到DataTable

1 个答案:

答案 0 :(得分:0)

我遇到的代码:

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

第二行可能是不必要的,因为最初的目标是将DataSource变为DataView

当然,查找这些内容告诉我SqlDataSource已经FilterExpression ...