我在应用程序中有两个带有条件的数据表,并希望对多行进行一些处理以更新列值 .
例如:
我有10000行的datatable1 . 我想通过datatable.select(“condition”)过滤行,并根据条件,我想更新行值 .
如果对于任何条件,我从数据表中找到了20行 . 我想一次更新这20条记录 . 不在任何循环中 . 我有datarow数组用于在datable中更新这些值 .
要使用多个条件更新行,请使用此选项
datatable.Select(string.Format("[lineNo]='{0}' and [Position]>='{1}' ", lineNo, Position)).ToList<DataRow>().ForEach(r => r["Linetext"] ="Sample Text" );
你可以试试下面的linq,
DataTable recTable = new DataTable(); // do stuff to populate table recTable.Select(string.Format("[code] = '{0}'", someName)).ToList<DataRow>().ForEach(r => r["Color"] = colorValue);
您可以在此处替换列和值...
如果要使用 abc 使用 Expression 来默认列值,则可以使用以下代码 .
abc
dt.Columns.Add("ColumnName").Expression = "'abc'";
如果您需要使用变量动态传递值,可以使用以下代码 .
string str = "abc"; dt.Columns.Add("ColumnName").Expression = "'" + str + "'";
3 回答
要使用多个条件更新行,请使用此选项
你可以试试下面的linq,
您可以在此处替换列和值...
如果要使用
abc
使用 Expression 来默认列值,则可以使用以下代码 .如果您需要使用变量动态传递值,可以使用以下代码 .