我有一个包含表列表的数据视图。我正在读取值列表,然后我想将其应用为此数据视图的过滤器。值列表实际上采用“table1,table2,table3”的形式。所以我想我可以将它用作数据视图的过滤器。
SqlOp.CommandText = "select name from dbo.sysobjects where xtype='u'";
SqlOp.ExecuteDataReader();
DataView dv = SqlOp.GetDataAsDataView();
SqlOp.CloseConnection();
返回数据视图中所有表的列表。有关如何过滤此数据视图的任何帮助吗?
修改
不确定我是否完全清楚我想要完成的任务。为了澄清,我试图弄清楚如果.RowFilter
将如何帮助我过滤此数据视图。类似的东西:
dv.RowFilter = "name IN (table1, table2, table3)" // I know this doesn't work
答案 0 :(得分:1)
你必须使用like statement
"select name from dbo.sysobjects where xtype like 'u%'"
同样使用参数集合
More Efficient Way of Adding Parameters to a SqlCommand .NET
答案 1 :(得分:1)
我发现了.RowFilter
问题:
dv.RowFilter = "name IN ('table1', 'table2', 'table3') // missing the single quote surrounding table names