更新数据表中的多行而不循环

时间:2013-09-16 14:09:22

标签: c# asp.net datatable

我在应用程序中有两个带有条件的数据表,并希望对多行进行一些处理以更新列值。

例如:

我有10000行的datatable1。我想通过datatable.select(“condition”)过滤行,并根据条件,我想更新行值。

如果对于任何条件,我从数据表中找到了20行。我想一次更新这20条记录。不在任何循环中。我有datarow数组用于在datable中更新这些值。

3 个答案:

答案 0 :(得分:8)

您可以尝试以下linq,

DataTable recTable = new DataTable();

// do stuff to populate table

recTable.Select(string.Format("[code] = '{0}'", someName)).ToList<DataRow>().ForEach(r => r["Color"] = colorValue);

您可以在此处替换您的列和值...

答案 1 :(得分:1)

使用多个条件更新行使用此

    datatable.Select(string.Format("[lineNo]='{0}' and [Position]>='{1}' ", lineNo, Position)).ToList<DataRow>().ForEach(r => r["Linetext"] ="Sample Text" );

答案 2 :(得分:0)

如果您想使用<{>} 来使用Value默认列值,则可以使用以下代码。

SourceName

如果您需要使用变量动态传递值,可以使用以下代码。

abc
相关问题