Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# LoadDataSet是否隐式关闭连接?_C#_Asp.net_Database - Fatal编程技术网

C# LoadDataSet是否隐式关闭连接?

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

我正在asp.net应用程序中使用microsoft.entrprise.libraries。 我打电话给LoadDataSet。下面的代码使用“using”,这意味着 调用完成后,所有资源都将被清理

当对数据库进行调用并超时且应用程序中抛出错误时,会发生什么情况,连接会关闭吗

谢谢, 罗伯特


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();
    }
}