visual ternario studio sirve que para operador muestra modo interrupcion errores encuentra empty aplicacion c# visual-studio-2012

ternario - string.empty c# para que sirve



El depurador de Visual Studio muestra el valor incorrecto(nulo donde debería haber un valor) (2)

No estoy seguro, pero creo que es un efecto del ciclo foreach en combinación con la función ChangeTracker.Entries() .

La función foreach es recopilar algunos datos a pedido. Por lo tanto, no se obtienen todos los datos de ChangeTracker.Entries() y luego se inicia el ciclo con cada valor.

Es más obtener el primer valor de la función -> ejecutar el valor -> obtener el segundo valor -> ...

Entonces el valor es nulo, porque aún no ha usado el objeto.

Cambia tus ChangeTracker.Entries() en ChangeTracker.Entries().ToList() y creo que verás un cambio.

Eche un vistazo al comando de yield para una comprensión más profunda de cómo funciona la función del iterador. (La lógica es un poco confusa :))

Estoy atascado, ¿por qué sucede esto? El código literalmente dice que entidad! = Null pero el depurador cree que es nulo. Que esta pasando?

Ya cambié a x86, volví a compilar, limpié e incluso reinicié la PC. Y el código siempre fue así, no hay ninguna versión donde la declaración if sea diferente. Y si continúo, no obtengo una excepción de puntero nulo.


Experimenté el mismo problema cuando había una variable con el mismo nombre declarado anteriormente en el método. En ese caso, el depurador solo "notaría" la primera variable. No tiene impacto en la ejecución del código real.