Microsoft Enterprise Library- ExecuteReader返回已关闭的Datarow

时间:2017-02-21 11:24:35

标签: c# asp.net enterprise-library

我遇到的问题是使用属于Microsoft Enterprise Library的Execute reader的常用功能。

整体代码简单如下:

using (IDataReader dataReader = db.ExecuteReader(sqlCommand))
                {
                    dt.Load(dataReader);
                }

该代码适用于所有场景,除了提供以下结果的场景:

The operation is invalid. OracleDataReader is closed

检查属性IsClosed时也是True。

谷歌搜索没有任何帮助,任何有经验的人都可以向我展示修复的路径。

1 个答案:

答案 0 :(得分:0)

using声明之前,您应该检查连接是否已打开,如果未打开,则必须打开它。

if (db.Connection.State != ConnectionState.Open)
{
    db.Connection.Open();
}