2011-04-03 11 views

Respuesta

46

Heurísticamente inalcanzable significa código posiblemente inalcanzable. El código inalcanzable es inalcanzable.

+7

Estoy descubriendo esto cuando es imposible para mí o para ReSharper saber si algo siempre va a ser falso (o '== nulo'). –

+1

A veces un objeto nunca va a ser nulo (o ReSharper cree que es el caso) Objeto IQueryable que tira datos cuando dice que sabe que la consulta no va a extraer ningún registro, todavía no va a ser "nulo" Solo tiene que refactorizar su código para que ReSharper no esté satisfecho ya que es posible que sea un porcentaje mayor de la mayoría de los desarrolladores. –

1

Supongamos que está eliminando 2 tipos diferentes de objetos en una prueba de unidad y desea utilizar un try/catch para ambos tipos.

Si elimina uno, y después comprobar para ver si tuvo éxito sin poner adecuadamente usando:

Assert.IsNull (obj1);

El "EsNulo" siempre puede ser nula porque fundido obj1 de forma incorrecta, o hizo algo por encima del código de color gris incorrectamente con obj1, el siguiente try/catch aparecerá en gris.

Intente solucionar lo que intenta Assert.IsNull y una vez que no siempre sea nulo o indefinido, se podrá acceder al código en gris.

+0

¿qué "código en gris"? – BaltoStar

+0

@BaltoStar El código en gris (en Visual Studio) es el código que no se puede alcanzar. ¿Obtiene el "código inalcanzable detectado" y no aparece ningún código atenuado en la ventana de vista previa? – whyoz

Cuestiones relacionadas