程序为一个winForm程序,adpter的fill方法填充Dataset后,使用一个整型指针逐记录遍历该Dataset,其代码如下:
DataSet ds = new DataSet();
...
Adapter.fill(ds,"table1");
string Name = "";
int rowCount = ds.tables["table1"].rows.Count;
int Ptr = 0;
while(Ptr <rowCount)
{
Name = (string)ds.tables["table1"].rows[Ptr]["Name"];//Ptr为2时运行时异常
... ...//处理代码
} 问题:在运行时出现异常,提示“在位置 2 处没有任何行”,第0、1条记录均能正确处理,可是第三条记录却出现异常,我刚开始怀疑数据库记录有问题,可是在我增加了记录条数后,依然是这个异常,并且总是在位置2处出错,我单步调试也是这个错误,但是可以得到rowCount的值为正确的数据库记录条数,证明应该是填充了数据,不知道是怎么回事?望各位帮帮忙!
DataSet ds = new DataSet();
...
Adapter.fill(ds,"table1");
string Name = "";
int rowCount = ds.tables["table1"].rows.Count;
int Ptr = 0;
while(Ptr <rowCount)
{
Name = (string)ds.tables["table1"].rows[Ptr]["Name"];//Ptr为2时运行时异常
... ...//处理代码
} 问题:在运行时出现异常,提示“在位置 2 处没有任何行”,第0、1条记录均能正确处理,可是第三条记录却出现异常,我刚开始怀疑数据库记录有问题,可是在我增加了记录条数后,依然是这个异常,并且总是在位置2处出错,我单步调试也是这个错误,但是可以得到rowCount的值为正确的数据库记录条数,证明应该是填充了数据,不知道是怎么回事?望各位帮帮忙!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货