我通常使用DataSet
,因为它非常灵活。最近我被分配了代码优化任务,为了减少对数据库的访问次数,我正在修改一个存储过程中的两个查询。其中一个查询返回计数
,另一个查询返回实际数据
。也就是说,我的存储过程
返回两个表格。现在,我知道如何使用DataSets
读取这两个表格,但我需要使用DataReader
来读取这两个表格。在搜索过程中,我发现了这篇文章。
我按照这篇文章写了我的代码:
dr = cmd.ExecuteReader();
while (dr.Read())
{
}
if (dr.NextResult()) // this line throws exception
{
while (dr.Read())
{
但是我在 dt.NextResult 处遇到了异常。异常信息如下:
Invalid attempt to call NextResult when reader is closed.
我也谷歌了以上错误,但仍无法解决问题。非常感谢任何帮助。我需要使用 datareader
读取多个表,这是否可行?