我正在使用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#]的解释,但我找不到任何线索。
谢谢。
答案 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