我有带有逻辑的遗留代码,如下所示:
using (SqlDataReader drColor = ColorDal.GetColors())
{
if (drColor.HasRows)
{
string colorCacheKey = string.Empty;
//_log.Debug("Total Color Count loaded from database: " + dsColor.Tables.Count.ToString());
// Retrieve each colorfamily present in the dataset.
while (drColor.Read())
{
......
}
}
drColor.Close(); // This is line # in the exception.
}
我在我的 ASP.NET MVC 应用程序中间歇性地收到以下异常:
[InvalidOperationException:内部连接致命错误。]
System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +6355814
System.Data.SqlClient.SqlDataReader.CloseInternal(Boolean closeReader) + 308
系统.Data.SqlClient.SqlDataReader.Close() +293
可以关闭SqlDataReader
内部using{}
会是它的原因吗?
谢谢。