"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Dois-je fermer explicitement une SQLConnection à l'intérieur d'un bloc d'utilisation?

Dois-je fermer explicitement une SQLConnection à l'intérieur d'un bloc d'utilisation?

Publié le 2025-02-06
Parcourir:869

Should I Explicitly Close a SqlConnection Inside a Using Block?

Utilisation du mot-clé dans les connexions SQL: fermement ou non?

Lors de l'utilisation du mot-clé d'utilisation pour envelopper un objet SQLConnection, une question commune se pose: La connexion doit être explicitement fermée dans le bloc d'utilisation, ou est-ce géré automatiquement?

La réponse réside dans le comportement du mot-clé d'utilisation. Lors de la sortie d'un bloc d'utilisation, la méthode .dispose () est invoquée sur l'objet contenu. Pour un sqlconnection, .dispose () ferme automatiquement la connexion et libère toutes les ressources associées.

Exemple de code:

] Utilisation de CN comme nouveau System.Data.SqlClient.SqlConnection () cn.open '{faire un tas d'autres choses avec des commandes et des cadeaux de données ici} cn.close 'ai-je besoin de cela? end en utilisant

using cn as new system.data.sqlclient.sqlconnection()
    cn.open
    '{do a bunch of other stuff with commands and datareaders here}
    cn.close 'Do I need this?
end using 
explication:

Le bloc d'utilisation dans cet exemple ferme automatiquement l'objet SqlConnection nommé CN lorsque le bloc est sorti. Par conséquent, l'appel explicite vers .close () après le bloc d'utilisation est redondant et inutile.

Conclusion:

Lorsque vous utilisez le mot-clé Utilisation pour gérer les connexions SQL, les connexions, les connexions, les connexions, les connexions, les connexions, les connexions SQL, les connexions, les connexions, les connexions, les connexions SQL, les connexions, les connexions, les connexions SQL, les connexions, les connexions, les connexions SQL, les connexions, les connexions, les connexions, les connexions SQL, les connexions, la La connexion sera automatiquement fermée lors de la sortie du bloc par l'invocation de .Disposose (). Les appels explicites à .close () dans le bloc sont superflus et doivent être omis.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3