C#-更改数据表的特定列的所有行的值

lug*_*eno 2 c# datatable datarow

我有一个数据表。我要做的是更改DataTable的“ X”列的所有行的值。

例如:

如果行值为“ TRUE”,则将其更改为“ Yes”,否则将其更改为“ No”

Tim*_*ter 6

一个简单的循环:

foreach(DataRow row in table.Rows)
{
    string oldX = row.Field<String>("X");
    string newX = "TRUE".Equals(oldX, StringComparison.OrdinalIgnoreCase) ? "Yes" : "No";
    row.SetField("X", newX);
}  
Run Code Online (Sandbox Code Playgroud)

StringComparison.OrdinalIgnoreCase启用不区分大小写的比较,如果您不希望“等于”为“是”,则只需使用==运算符即可。


kml*_*kml 5

也许你可以试试这个

int columnNumber = 5; //Put your column X number here
for(int i = 0; i < yourDataTable.Rows.Count; i++)
{
    if (yourDataTable.Rows[i][columnNumber].ToString() == "TRUE")
    { yourDataTable.Rows[i][columnNumber] = "Yes"; }
    else
    { yourDataTable.Rows[i][columnNumber] = "No"; }
}
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助...