Aquellos que trabajamos en Visual Basic y C# extrañamos algunas veces, al utilizar este segundo lenguaje, la posibilidad de tener parámetros opcionales que si nos permite VB. La buena noticia es que con la llegada de C# 4.0 ahora es posible hacerlo desde este lenguaje.
Veamos un ejemplo, supongamos que tenemos este método:
public void Prueba(string param1, int param2, bool param3) { }
Si queremos que se lo pueda llamar utilizando parámetros opcionales simplemente tenemos que definir los valores por defecto de cada uno, por ejemplo, de esta manera:
public void Prueba(string param1 = null, int param2 = 0, bool param3 = false) { }
Luego, al llamarlo se pueden obviar los parámetros que no queremos proporcionar, por ejemplo, en el siguiente ejemplo sólo le pasamos el valor del parámetro “param1”:
Prueba("cadena de ejemplo");
Pero esto no es todo, si quisiéramos pasar el valor del segundo parámetro sin especificar un valor para el primero lo podríamos hacer así:
Prueba(param2 : 200);
Y si quisiéramos pasar el segundo y tercero podríamos hacer esto:
Prueba(param2 : 200, param3 : true);
Como pueden ver su uso es muy similar a la forma de definir los valores de las propiedades de los atributos de las clases o métodos, aunque en ese caso se usa el igual (=) en lugar del signo “dos puntos” (:).
Espero que este pequeño “tip” les haya sido útil.
Suerte!