C# LoadDataSet是否隐式关闭连接?
我正在asp.net应用程序中使用microsoft.entrprise.libraries。 我打电话给LoadDataSet。下面的代码使用“using”,这意味着 调用完成后,所有资源都将被清理 当对数据库进行调用并超时且应用程序中抛出错误时,会发生什么情况,连接会关闭吗 谢谢, 罗伯特C# LoadDataSet是否隐式关闭连接?,c#,asp.net,database,C#,Asp.net,Database,我正在asp.net应用程序中使用microsoft.entrprise.libraries。 我打电话给LoadDataSet。下面的代码使用“using”,这意味着 调用完成后,所有资源都将被清理 当对数据库进行调用并超时且应用程序中抛出错误时,会发生什么情况,连接会关闭吗 谢谢, 罗伯特 using语句实际上扩展为如下内容,因此是的,如果wrapper的Dispose()调用释放了所有适当的资源,那么就没有泄漏(至少在wrapper对象内): public virtual void Loa
using
语句实际上扩展为如下内容,因此是的,如果wrapper的Dispose()
调用释放了所有适当的资源,那么就没有泄漏(至少在wrapper
对象内):
public virtual void LoadDataSet(DbCommand command, DataSet dataSet, string[] tableNames)
{
using (var wrapper = GetOpenConnection())
{
PrepareCommand(command, wrapper.Connection);
DoLoadDataSet(command, dataSet, tableNames);
}
}
var wrapper = GetOpenConnection()
try
{
PrepareCommand(command, wrapper.Connection);
DoLoadDataSet(command, dataSet, tableNames);
}
finally
{
if (wrapper != null)
{
((IDisposable)wrapper ).Dispose();
}
}