在datatable中找到数据行的正确程序是什么?
运行以下代码会出现以下错误:
“System.IndexOutOfRangeException:'99位没有行。
int myRowNumber = 99;
if (myDatatable.Rows[myRowNumber] == null)
{
MessageBox.Show("row does not exists");
return;
}
答案 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;
}