L'une des règles de mise en oeuvre méthode Dispose Says:.La mise en œuvre modèle à usage unique correctement - propriétés implémentées automatiquement
« Considérée comme une ObjectDisposedException de méthodes d'instance sur ce type (autre que Éliminez) lorsque les ressources sont déjà éliminés cette règle ne ne s'applique pas à la méthode Dispose car elle devrait être appelable plusieurs fois sans émettre d'exception. "
Voir: http://msdn.microsoft.com/en-us/library/b1yfkh5e.aspx
Est-ce que cela signifie, que si je veux mettre en œuvre des propriétés correctement, je ne peux pas utiliser les propriétés implémentées automatiquement? Ai-je besoin de propriétés pour l'implémenter comme celle-ci?
private bool _property;
public bool Property
{
get
{
if(disposed) throw new ObjectDisposedException ("MyClass");
return _property;
}
set
{
if(disposed) throw new ObjectDisposedException ("MyClass");
_property=value;
}
}
Je suis d'accord. Lorsque vous ne faites que renvoyer des valeurs primitives, telles que des nombres entiers, des booléens et des couleurs, ne prenez pas la peine de procéder à une vérification complète. Toutefois, lorsque cette propriété renvoie un objet qui ne peut raisonnablement pas être utilisé après son élimination, effectuez une vérification complète. – Steven