web-dev-qa-db-fra.com

Débogage des propriétés automatiques

Existe-t-il un moyen de définir un point d'arrêt sur setter/getter dans une propriété implémentée automatiquement?

int Counter { get; set; }

Autre que le changer en propriété standard (je le fais de cette façon, mais pour ce faire, je dois changer et recompiler tout le projet)

121
Marek Kwiendacz

Avec Visual Studio 2008, 2010, 2012, 2013:

  1. Accédez à la fenêtre Breakpoint
  2. Nouveau -> Break at Function…
  3. Pour le get, tapez: ClassName.get_Counter()

    Pour le set, tapez: ClassName.set_Counter(int)

Vous obtiendrez un "Aucune source disponible" lorsque le point d'arrêt est atteint, mais vous obtiendrez l'emplacement d'appel dans la pile des appels.

J'ai trouvé cette solution ici sur MSDN

214
Matt Smith

Si j'étais vous, je ferais temporairement de la propriété une propriété standard appuyée par un champ interne ... définissez vos points d'arrêt, puis vous pourrez le modifier après.

7
Kieron

Cette question est très ancienne mais il vaut la peine qu'elle ne fonctionne que dans VS 2015.

https://blogs.msdn.Microsoft.com/visualstudioalm/2014/11/14/set-breakpoints-on-auto-implemented-properties-with-visual-studio-2015/

class X {
  public string name {
    set;
    get; // setting a breakpoint here will break in VS 2015!
  }
}
7
RedX

Définissez des points d'arrêt où vous définissez une propriété ou obtenez une propriété, pas d'autre moyen.

vous pouvez le faire en Trouver toutes les références options

Et comme il ne s'agit que de stocker des valeurs et de ne pas avoir de code dans la partie setter, alors que déboguez-vous?

0
TalentTuner