我正在从 SQL Server 检索大量数据。一切正常,但是当我尝试在using语句中关闭 IDataReader
try
{
using (SqlConnection con = new SqlConnection(connString))
{
con.Open();
using (SqlCommand command = new SqlCommand(sql_query, con))
{
command.CommandTimeout = 0;
using (IDataReader rdr = new SqlCommand(sql_query, con).ExecuteReader(CommandBehavior.SequentialAccess))
{
dataTable = GetDataTableFromDataReader(rdr);
}
....
我得到:执行超时已过期。在操作完成之前超时时间已过或服务器没有响应。
使用类似rdr = null会更好吗?还是有另一种更好的解决方案如何关闭 IDataReader?