我有一个数据表,我试图为每个循环使用一个if语句来修改某些值,但是每当我尝试使用if语句时都不会发生任何事情。如果我删除了if语句,则显然只是改变了每一行。

我究竟做错了什么?我试过在ItemArray.GetValue()上使用不同的值,但还是没有运气。

            int x = 0;
            foreach ( DataRow myRow in dt.Rows )
            {
                if (dt.Rows [x].ItemArray.GetValue(1).ToString()=="IP")
                {
                    myRow.BeginEdit ( );
                    myRow [ "grd" ] = " ";
                    myRow.EndEdit ( );
                }
                x++;
            }

最佳答案

对于初学者,变量x是多余的。您可以简单地参考:

if (myRow.ItemArray.GetValue(1).ToString()=="IP")


那应该减少代码中的一些混乱。

if语句上放置一个断点以查看GetValue(1).ToString()在循环的每次迭代中的实际值是多少。您可能正在获取错误的值。

关于c# - 遍历数据表并使用if语句修改值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7493921/

10-17 00:24