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