C# SqlDataReader 接口与 HasRows、Read() 和 NextResult()

C# SqlDataReader interface with HasRows, Read() and NextResult()

我试图找到一个由 SqlDataReader 实现并公开 HasRows、Read() 和 NextResult() 的接口。我需要这些 属性 和方法,因为我需要读取存储过程 (as mentioned here) 返回的多个结果集。目前我正在使用 System.Data.IDataReader 公开 Read() 和 NextResult() 但不公开 HasRows 属性.

为了代码的可测试性,我需要一个接口,这样耦合就会丢失。

对这样的界面有什么帮助吗?或者我需要从头开始编写一个接口抽象层?

HasRows 不需要任何东西(通常它被冗余使用,因为人们不知道更好)。标准模式是:

while (reader.Read()) ...

所以这就不需要您正在寻找的界面。