如何通过行索引检查数据行是否存在?

时间:2018-01-23 02:56:51

标签: c#

在datatable中找到数据行的正确程序是什么?

运行以下代码会出现以下错误:

  

“System.IndexOutOfRangeException:'99位没有行。

int myRowNumber = 99;
if (myDatatable.Rows[myRowNumber] == null)
  {
     MessageBox.Show("row does not exists");
      return;
     }

3 个答案:

答案 0 :(得分:2)

    int myRowNumber = 99;
    if (!myDatatable.HasRowAt(myRowNumber))
    {
       MessageBox.Show("row does not exists");
    }

您可以为数据表创建自己的扩展方法,稍后在代码中重复使用。

    public static bool HasRowAt(this DataTable dt, int index)
    {
        return dt.Rows.Count <= index;
    }

答案 1 :(得分:1)

如何使用if条件?

if(myDatatable.Rows.Count <= myRowNumber)
{
    MessageBox.Show("row does not exists");
}
else
{
    MessageBox.Show("row exists");
}

答案 2 :(得分:1)

也许你可以尝试一下这个?

 if (myDatatable.Rows.Count > myRowNumber - 1)
            {
                MessageBox.Show("row exists");
                return;
            }
            else
            {
                MessageBox.Show("row does not exists");
                return;

            }