Una de las excepciones más típicas que podemos encontrar en un lenguaje de programación fuertemente tipado es la de referencia nula. C# Proporciona tres operadores para facilitar el trabajo con nulos: el operador de Null-Coalescing, el operador null-Coalescing assignment.
Pero veamos primero lo que significa Tipos de valores nulos, por definición los tipos de referencias pueden representar un valor inexistente. Es decir podemos hacer algo así:
Podemos resolver este problema utilizando una expresión especial llamada nullable. Otros herramientas con las que contamos para trabajar con nulos son:
Operador Null-Coalescing
(??) Devuelve el valor de su mano izquierda si no es nulo; evalúa el operando de la derecha y devuelve su resultado.
Operador Null-Coalescing Assignment
(??=) Está disponible a partir de C# 8.0 y posteriores, opera de la forma «si la expresion de la izquierda resulta en null asigna el valor de la mano derecha».
Cuando es útil usar este operador?
- Cuando trabaje con tipos de valores anulables y necesite proporcionar un valor de un tipo de valor subyacente, utilice el operador (??=)
- Para especificar el valor a proporcionar en caso de que un valor de tipo anulable sea nulo.
Formas de evitar la excepción de referencia nula:
- Recuerda instanciar los “reference types”.
- No olvides que si obtienes un valor de retorno nulo de un método, y luego llamas a un método con el tipo devuelto el runtime lanza una excepción NullReferenceException.
En este breve post sólo quería mostrarte las opciones que tienes para trabajar con nulos y evitar las NullReferenceException. Si quieres profundizar en estos temas te recomiendo que leas esto:
C# operators and expressions – C# reference | Microsoft Docs
Gracias por llegar hasta aquí, nos vemos el jueves! ::D