我对 C# 还比较陌生,并且仅在过去几天内接触过“IDisposables”。我可以掌握using
块的概念来处理必须处理的对象,而无需手动记住调用该.Dispose()
方法 - 方便!
假设我从一个新的开始SqlConnection
,我在一个using
语句中处理它。在该代码块中,我创建了一些额外的 IDisposable,例如SqlDataAdapter
. 该适配器是否需要它自己的using
声明?
例如,如果我有代码...
using (SqlConnection myConnection = new SqlConnection())
{
SqlCommand myCommand = new SqlCommand();
SqlDataAdapter myAdapter = new SqlDataAdapter();
// Do things
}
... 将在何时被myCommand
处置(因为它们在该代码块的范围内)?或者我需要多个语句,也许是这样的:myAdapter
myConnection
using
using (SqlConnection myConnection = new SqlConnection())
{
using (SqlCommand myCommand = new SqlCommand())
{
using (SqlDataAdapter myAdapter = new SqlDataAdapter())
{
// Do things
}
}
}