【问题标题】:Get Specified row index of a column from a data table having values contained in a string从具有包含在字符串中的值的数据表中获取列的指定行索引
【发布时间】:2014-04-06 18:34:01
【问题描述】:

我有一个包含 Select 和 Value 两列的数据表。

Select Value
 0      213
 0      314
 0      282

我有一个名为 Ids={213,314} 的整数数组 如果 Ids 的值出现在数据表列“values”中,则更新“select” 列为 1。 我必须使用 Linq 来做到这一点。请帮忙

【问题讨论】:

    标签: c# linq datatable linq-to-dataset


    【解决方案1】:

    Linq 用于查询,而不是用于更新。所以你必须分两步完成任务。首先是查询应该更新的行:

    var rows = from r in table.AsEnumerable()
               where Ids.Contains(r.Field<int>("Value"))
               select r;
    // Or lambda syntax
    // rows = table.AsEnumerable().Where(r => Ids.Contains(r.Field<int>("Value")))
    

    第二部分是更新选中的行,不涉及Linq:

    foreach(var row in rows)
        row.SetField("Select", 1);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-21
      • 1970-01-01
      • 2012-10-30
      • 1970-01-01
      • 1970-01-01
      • 2020-09-23
      • 2013-06-12
      • 2013-07-21
      相关资源
      最近更新 更多