Si une Exception se produit à l'intérieur d'une instruction d'utilisation ne fait l'objet obtenez toujours disposé?
Si une Exception se produit à l'intérieur d'une instruction d'utilisation ne fait l'objet obtenez toujours disposé?
La raison pour laquelle je demande, c'est parce que je suis en train de décider sur l'opportunité de mettre un try pris autour de l'ensemble du bloc de code ou dans l'intérieur de la à l'aide de déclaration. En gardant à l'esprit certaines exceptions sont en cours de re-jeté par la conception dans le bloc catch.
using (SPSite spSite = new SPSite(url))
{
//Get the Web
using (SPWeb spWeb = spSite.OpenWeb())
{
//Exception occurs here
}
}
Vous devez vous connecter pour publier un commentaire.
Oui, ils le feront.
est équivalent à
Modifier
Après avoir répondu à cette question, je l'ai écrit plus en profondeur un post sur le IDisposable et à l'Aide de construire dans mon blog.
Oui. Un
using
déclaration correspond approximativement à la suite de construire:Oui, il le fait. C'est comme emballage de votre code dans un try-finally (et à l'élimination dans le enfin).
La
using
instruction entraîne une complète et appropriéedispose
modèle est généré, donc la réponse est oui.