c# - simbolo - punto de interrupcion no comprobado visual studio code
¿Por qué Visual Studio no establece un punto de interrupción condicional en esta simple propiedad de C#? (3)
En mi objeto C #, establezco un punto de interrupción condicional con el value == "Status"
condición value == "Status"
en el establecedor de esta propiedad. Normalmente está decorado con un aspecto PostSharp, pero lo he comentado en este caso, y sigue teniendo problemas.
public virtual string Name
{
get
{
return _name;
}
set
{
_name = value; // breakpoint here
}
}
La primera vez que la ejecución llega al punto de interrupción, VS muestra un error:
EDITAR - para la capacidad de búsqueda, el mensaje es este:
No se puede establecer el siguiente punto de interrupción:
En (archivo) .cs, línea 137 carácter 17 (''(clase) .Nombre'', línea 12), cuando ''valor == "Estado"'' es verdadero
La evaluación de la función requiere que se ejecuten todos los hilos.
Así es como se ve la ventana de Temas:
¿Alguien ha visto esto antes, o tiene alguna idea de qué podría estar causando que el depurador se vuelva loco en este caso aparentemente simple? ¿Podría tener algo que ver con el hilo de dormir?
Eventualmente ideé una solución alternativa:
public virtual string Name
{
get
{
return _name;
}
set
{
if (value == "Status")
DoSomeNoOp(); // Breakpoint here, or Debug.Fail() inside your no-op
_name = value;
}
}
No creo que sepa qué value
tiene. Intente poner el punto de interrupción en el cierre }
y use _name
en la condición.
Una vez tuve este problema cuando me encontré con una situación cuando sale de la ejecución del subproceso base. Un poco más de información sobre el flujo de su aplicación ayudará. Me parece una condición de carrera.