Rowfilter使用存储在变量中的值选择语法

时间:2014-11-03 11:59:29

标签: vb.net select datatable

我正在使用VB.NET,我需要使用Datatable.Select来获取具有匹配值的行。

考虑我有Datatable_A,它有很多行。我有兴趣获得符合我的搜索条件的行/行。在这种情况下,我必须获得一行(RowA),其中AnswerA存储在Column_A中。

我知道我可以轻松使用以下方法找到答案:

RowA = Datatable_A.Select("Column_A  = 'AnswerA'")

然而,价值'答案A'存储在Variable_A中。

我尝试过使用

RowA = Datatable_A.Select("Column_A  = 'Variable_A'")

不幸的是,我仍然无法获得数据行,其Column_A ='答案A'。

我已经研究过这个网站DataView RowFilter Syntax [C#]的解释,但我找不到任何线索。

谢谢。

1 个答案:

答案 0 :(得分:2)

如果要使用Select方法选择数据表行的子集,并且要包含要过滤行的值的变量,则需要编写

Dim Variable_A = "MySearchCriteria"
Dim rowsSelected = Datatable_A.Select("Column_A  = '" & Variable_A & "'")

这意味着您希望Column_A(字符串列)中包含的所有行都包含" MySearchCriteria"存储在Variable_A中。创建过滤条件,将描述列名称的文字字符串与具有Variable_A内容的运算符连接起来。由于Column_A被假定为字符串列,因此您需要将Variable_A封装在单引号之间。

请记住,Select返回与过滤器表达式匹配的DataRow数组。

For Each row in rowsSelected
    Console.WriteLine(row("Column_A").ToString)
Next