【问题标题】:Linq comparing DataTable with List<String>Linq 比较 DataTable 和 List<String>
【发布时间】:2013-07-23 13:44:02
【问题描述】:

我有一个包含分隔字段的字符串列表(List)。一个例子是:

List[0] = "7/1/2013,ABC,123456"
List[1] = "7/2/2013,DEF,234567"

我还有一个数据表,其中记录将包含或不包含字符串列表中第 2 列和第 3 列的值:

例子

Row[0][0]="ABC"   <-----String
Row[0][1]=123456  <-----Int32

我想要做的是在 DataTable 中找到任何在字符串列表中没有对应值的记录(通过 Linq)。

我已经在谷歌上搜索了一段时间,但找不到使用 Linq 执行此操作的正确方法...有人可以帮忙吗?

【问题讨论】:

    标签: linq data-structures


    【解决方案1】:

    此代码 sn-p 应该为您提供没有适当 DataTable 值的索引的枚举:

    var correspondingRecords =
      from index in Enumerable.Range(0, List.Count)
      let items = List[index].Split(',')
      where !(item[1] == Row[index][0] && item[2] == Row[index][1])
      select index;
    

    基本思想是迭代索引,以确保您将适当的行和列表项相互比较。一旦你这样做了,解析列表项并进行适当的比较就足够简单了。

    【讨论】:

      猜你喜欢
      • 2012-06-07
      • 2020-01-26
      • 1970-01-01
      • 2011-12-11
      • 2017-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多