C# IDisposable不指定给变量
通常我会这样做:C# IDisposable不指定给变量,c#,.net,idisposable,C#,.net,Idisposable,通常我会这样做: using (SqlCommand cmd = new SqlCommand("XXXX", cnn)) { using (SqlDataReader dr = cmd.ExecuteReader()) { //xxxxxx } } 甚至这个: using (SqlCommand cmd = new SqlCommand("XXXX", cnn)) using (SqlDataReader dr = cmd.ExecuteReade
using (SqlCommand cmd = new SqlCommand("XXXX", cnn))
{
using (SqlDataReader dr = cmd.ExecuteReader())
{
//xxxxxx
}
}
甚至这个:
using (SqlCommand cmd = new SqlCommand("XXXX", cnn))
using (SqlDataReader dr = cmd.ExecuteReader())
{
//xxxxxx
}
但是这个呢:
using (SqlDataReader dr = new SqlCommand("XXXX", cnn).ExecuteReader())
{
//xxxxxx
}
即使我没有将其分配给变量,该调用是否会对SqlCommand进行Dispose()调用
即使我没有将其分配给变量,该调用是否可以为SqlCommand调用IDisposable
否。它将在SqlDataReader
(dr
)上调用Dispose()
),因为这是表达式返回的对象
即使我没有将其分配给变量,该调用是否可以为SqlCommand调用IDisposable
否。它将在
SqlDataReader
(dr
)上调用Dispose()
,因为这是表达式返回的对象。@SeanW Yes-您当前的代码不会处理SqlCommand
-所以请使用“甚至这个”option@SeanW是-您当前的代码不会处理SqlCommand
-因此请使用“甚至这个”选项