Je sais que j'ai posé une question connexe plus tôt. J'ai juste eu une autre pensée.en utilisant SQLDataReader
using (SqlConnection conn = new SqlConnection('blah blah'))
{
using(SqlCommand cmd = new SqlCommand(sqlStatement, conn))
{
conn.open();
// *** do I need to put this in using as well? ***
SqlDataReader dr = cmd.ExecuteReader()
{
While(dr.Read())
{
//read here
}
}
}
}
L'argument est que: Puisque l'objet SqlDataReader
dr
est pas un objet comme les objets de connexion ou de commande, son tout simplement une référence indiquant la méthode cmd.ExecuteReader()
, dois-je mettre le lecteur dans un using
. (Maintenant basé sur mon post précédent, je comprends que tout objet qui utilise IDisposable
doit être mis dans un using
, et SQLDataReader
hérite de IDisposable
, donc j'ai besoin de le mettre.Ai-je raison à mon avis?) Je suis juste confus puisque ce n'est pas un nouvel objet, cela causerait-il des problèmes pour disposer un objet qui est simplement un pointeur de référence à la commande?
Un grand merci
"cmd.ExecuteReader" est une sorte de référence de la méthode. "cmd.ExecuteReader()" (entre crochets) est un appel de méthode. –