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