【发布时间】:2016-04-05 07:11:49
【问题描述】:
同时使用 DataReader 通过 2 种不同的方法检索多个 AJAX 调用的数据。
方法一:
using (SqlDataReader reader = clientDb.ExecuteSPReader("SP1",
CommandBehavior.CloseConnection,
parameters))
{
if (reader.HasRows)
{
while (reader.Read())
{
}
reader.Close();
}
}
方法二:
using (SqlDataReader reader = clientDb.ExecuteSPReader("SP2",
CommandBehavior.CloseConnection,
parameters))
{
if (reader.HasRows)
{
while (reader.Read())
{
}
reader.Close();
}
}
这两种方法都在单个数据库上执行。它是否应该暗示我不会关闭阅读器,因为它将被 GC 关闭?我正在使用“使用”语句执行阅读器。
就我而言,问题在于两种方法都使用相同的数据库。一种方法
reader.close()
关闭另一个方法连接并跳转到异常。所以,想知道实现这种 AJAX 请求方法的最佳方式是什么。
我还在以下网址中读到,不应关闭或处置托管对象。
https://msdn.microsoft.com/en-us/library/8xx3tyca%28v=vs.110%29.aspx
【问题讨论】:
标签: asp.net asp.net-ajax