Non, l'Élimination de la Commande n'aura pas d'effet de la Connexion. Une meilleure approche serait également envelopper le SqlCommand dans un bloc using ainsi
using (SqlConnection conn = new SqlConnection(connstring))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand(cmdstring, conn))
{
cmd.ExecuteNonQuery();
}
}
Sinon, la Connexion est inchangée par le fait qu'une Commande ait été éliminé (c'est peut-être ce que vous voulez?). Mais gardez à l'esprit que d'une Connexion
être éliminés en tant que bien, et probablement plus important de disposer que d'une commande.
EDIT:
Je viens de tester ceci:
SqlConnection conn = new SqlConnection(connstring);
conn.Open();
using (SqlCommand cmd = new SqlCommand("select field from table where fieldid = 1", conn))
{
Console.WriteLine(cmd.ExecuteScalar().ToString());
}
using (SqlCommand cmd = new SqlCommand("select field from table where fieldid = 2", conn))
{
Console.WriteLine(cmd.ExecuteScalar().ToString());
}
conn.Dispose();
La première commande a été éliminé lors de l'utilisation de bloc a quitté. La connexion était toujours ouverte et bonne pour la deuxième commande.
Donc, l'élimination de la commande n'a décidément pas de disposer de la connexion, il a été à l'aide.