使用连接池或者假设在多次调用之间连接不会关闭,对于执行具有多个结果集的存储过程和多次执行存储过程之间是否存在网络或服务器性能差异,以及差异的显著程度是多少。
伪代码如下:
using(new connection)
{
using (datareader dr = connection.Execute(Command))
{
while (dr.NextResult())
{
while (dr.Read())
{
SomeContainer.Add(Something.Parse(dr));
}
}
}
}
vs
using(new connection)
{
using (datareader dr = connection.Execute(Command))
{
while (dr.Read())
{
SomeContainer.Add(Something.Parse(dr));
}
}
using (datareader dr = connection.Execute(Command))
{
while (dr.Read())
{
SomeContainer.Add(Something.Parse(dr));
}
}
}