通过DataTable LINQ搜索

时间:2014-06-08 19:30:12

标签: vb.net linq

我正在尝试返回数据行中的字段符合某些条件的数据行列表。这就是我所拥有的

'Dim returnedList = myDatatable.Where(Function(x) x.Item("TagergetField").ToString = "TheCriteria").ToList()

我的Where子句不正确,我不知道如何返回仅包含符合我标准的记录的过滤数据表。我想返回一个数据表对象而不是List

1 个答案:

答案 0 :(得分:1)

试试

datatable.AsEnumerable().Where(Function(x) x("TagergetField").ToString = "TheCriteria").ToList()

这将返回List(Of DataRow)

您可以在不诉诸Linq的情况下获得相同的结果

Dim rows = dataTable.Select("TargetField = 'TheCriteria'").ToList()

注意最后一个如何更具可读性和更高性能(刚刚测试过)

修改

要获取数据表,您可以使用DataSetExtension命名空间方法CopyToDataTable

Dim dataTable1 = rows.CopyToDataTable()