Saltar al contenido

Artículos, tutoriales, trucos, curiosidades, reflexiones y links sobre programación web ASP.NET Core, MVC, Blazor, SignalR, Entity Framework, C#, Azure, Javascript... y lo que venga ;)

17 años online

el blog de José M. Aguilar

Inicio El autor Contactar

Artículos, tutoriales, trucos, curiosidades, reflexiones y links sobre programación web
ASP.NET Core, MVC, Blazor, SignalR, Entity Framework, C#, Azure, Javascript...

¡Microsoft MVP!
miércoles, 3 de abril de 2024
C#

Hoy va un post rápido sobre una característica de C# 12 que, aunque pequeña, nos puede resultar interesante en determinadas situaciones y puede pasar fácilmente desapercibida entre todas las demás novedades de esta versión del lenguaje.

Hasta C# 11 (.NET 7), no teníamos forma de definir una expresión lambda con parámetros opcionales y valores por defecto, como podemos hacer en los métodos o funciones normales, lo que complicaba la implementación de algunos escenarios.

A partir de C# 12 (.NET 8), podemos definir parámetros opcionales en expresiones lambda. La sintaxis es la que habitualmente usamos para definir parámetros opcionales en métodos, añadiendo un valor por defecto al parámetro en la definición de la expresión lambda, por lo que su uso nos resultará muy natural:

var sum = (int a, int b = 0) => a + b;
Console.WriteLine(sum(1, 2)); // Muestra "3".
Console.WriteLine(sum(1));    // Muestra "1". Usa el valor por defecto para el parámetro b

¡Espero que os resulte útil! :)

Publicado en Variable not found.

Aún no hay comentarios, ¡sé el primero!