DataTableReader检查是否有下一个结果C#

DataTableReader检查是否有下一个结果C#

问题描述:

你好,大家好我与我需要检查,如果一个DataTableReader对象有下一次更多的结果我打电话Read()功能的问题。 我的代码是这样的:DataTableReader检查是否有下一个结果C#

 DataTable workTable = new DataTable(); 
     workTable.Columns.Add("1"); 
     workTable.Columns.Add("2"); 
     DataRow workRow; 

     for (int i = 0; i <= 9; i++) 
     { 
      workRow = workTable.NewRow(); 
      workRow[0] = i; 
      workRow[1] = "CustName" + i.ToString(); 
      workTable.Rows.Add(workRow); 
     } 
     var test2 = workTable.CreateDataReader(); 

     while (test2.Read()) 
     { 
      Debug.WriteLine(test2[1]); 
      //I need to know if the test2 instance Read function 
      //will return false next time I call it without move the current 
      //cursor.. 
      Debug.WriteLine("Have next?: "+ test2.HasNextResult()); //something like that, of some workaround... 
     } 

反正有做到这一点?

只为你们知道,我这样做是因为我嘲笑(对于统一测试)一个COM记录集对象具有EOF属性和MoveNext方法。该EOF检查,如果当前行是空的,MoveNext方法当前光标移动到下一个记录,我使用的DataTableReader一个实例来覆盖这些操作。

的datatablereader有NextResult方法将返回基于读者是否有更多结果布尔。

,你可以使用它作为这样

do 
{ 
    var x = reader.Read(); 
    ...Rest of your code 
} while (reader.NextResult()); 
+0

这个解决方案没有奏效。刚过throught一个时间,然后离开了'做{} while'声明。该'NextResult'方法返回假的,但我已经加入9项(如代码显示在我的问题的说明) –