你好,我遇到的问题是,我需要检查dataTabLeReader对象是否在下次调用 Read()
函数时是否有更多结果。我的代码就是这样:
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...
}
无论如何都有吗?
只是你们知道,我之所以这样做,是因为我正在嘲笑(用于Unity测试)一个具有EOF
属性和MoveNext
方法的COM记录集对象。EOF
检查当前行是否为空,MoveNext
方法将当前光标移至下一个记录,我正在使用DataTableReader
的实例来覆盖这些操作。
dataTableReader具有nextresult方法,该方法将根据读者是否有更多结果来返回布尔值。
您可以将其用作这样的
do
{
var x = reader.Read();
...Rest of your code
} while (reader.NextResult());