Pregunta rápida aquí sobre declaraciones de cortocircuito en C#. Con una sentencia if como esta:Evaluación de declaración de cortocircuito: ¿está garantizado? [C#]
if (MyObject.MyArray.Count == 0 || MyObject.MyArray[0].SomeValue == 0)
{
//....
}
¿Está garantizado que la evaluación se detendrá después de la parte "MyArray.Count", a condición de que la porción es cierto? De lo contrario, obtendré una excepción nula en la segunda parte.
En caso de que haga esta pregunta porque * sí * obtuvo una excepción de referencia nula del código anterior, es probable que sea porque 'MyArray' es nulo o' MyArray [0] 'contiene un valor nulo. Ver mi respuesta –