SqlDataReader 在 ASP.NET 释放和关闭

本文关键字:释放 NET ASP SqlDataReader | 更新日期: 2023-09-27 18:35:05

执行以下代码,正确清理所有 SqlDataReader:

using (IDataReader reader = SqlHelper.GetDataReader(sql.ToString())) {
    if (reader.Read()) {
        result = reader.IsDBNull(0) ? string.Empty : reader[0].ToString();
    }
}

我的代码中有一些并发/释放问题,并试图追捕它们。

SqlDataReader 在 ASP.NET 释放和关闭

一旦

using语句的结尾超出范围,Dispose()将自动在IDataReader上调用。还要确保读取器是使用CommandBehavior.CloseConnection创建的,以便读取器在释放连接后将释放连接。

但是我没有看到任何其他涉及连接的代码。如果您使用的是经典SqlHelper类,那可能是问题的根源......