Expresiones y efectos secundarios
Un efecto secundario se produce cuando la evaluación de una expresión cambia el valor de los datos en la aplicación.
Se han de tener en cuenta los efectos secundarios a la hora de evaluar las expresiones en el depurador. Si evalúa una expresión en la ventana Inspección o el cuadro de diálogo Inspección rápida y la expresión tiene efectos secundarios, puede que cambie el valor de las variables en otra parte del programa sin que se dé cuenta. Los efectos secundarios pueden dificultar mucho la depuración generando la aparición de errores donde no los hay o enmascarando la aparición de errores reales.
Una causa común de los efectos secundarios es la evaluación de una llamada a función en una ventana del depurador. Esas evaluaciones suelen ser evidentes. Una causa más sutil de los efectos secundarios es la evaluación de propiedades y otras llamadas a función implícitas en código administrado.
El depurador no puede determinar si una evaluación de propiedad o llamada a función implícita tiene efectos secundarios. Por consiguiente y de manera predeterminada, el depurador no evalúa automáticamente las llamadas a función implícitas. La evaluación de propiedades se permite de manera predeterminada pero se puede desactivar en el cuadro de diálogo Opciones. Cuando no se ha evaluado una llamada a función o propiedad, aparece un icono de actualización. Para evaluar manualmente la expresión, haga clic en el icono de actualización. Para obtener información detallada, vea Cómo: Actualizar valores de comprobación.
Cuando se desactiva la evaluación de propiedades o las llamadas a funciones implícitas, puede forzar la evaluación mediante el modificador de formato ac (sólo en C#). Vea Especificadores de formato en C#.