C# permete già da molte versioni di dichiarare un parametro di un metodo e assegnargli un valore di default. Grazie a questa funzionalitò, chi invoca il metodo non è obbligato a passare il valore per quel parametro. Tuttavia, questa funzionalità era limitata ai metodi delle classi, ma non ai metodi inline come le lambda. A partire dalla versione 12 di C#, questa limitazione è stata eliminata e possiamo dichiarare parametri con valori di default anche per le lambda come visibile nel prossimo esempio.
var myfunc = (string name = "def") => Console.WriteLine($"Hello {name}"); MyFunc("Stefano"); MyFunc();
La prima chiamata al metodo MyFunc restituirà Hello Stefano visto che abbiamo passate il parametro esplicitamente, mentre la seconda chiamata restituirà Hello def in quanto non avendo passato il parametro esplicitamente, il compilatore ha usato il valore di default.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Supporto ai tipi DateOnly e TimeOnly in Entity Framework Core
Creare un webhook in Azure DevOps
Aggiungere interattività lato server in Blazor 8
Miglioramenti nelle performance di Angular 16
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi
Routing statico e PreRendering in una Blazor Web App
Definire stili a livello di libreria in Angular
Estrarre dati randomici da una lista di oggetti in C#
Migliorare la scalabilità delle Azure Function con il Flex Consumption
Gestire liste di tipi semplici con Entity Framework Core
Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
I più letti di oggi
- Simulare Azure Cosmos DB in locale con Docker
- Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
- .NET Conference Italia 2023 - Milano e Online
- .NET Conference Italia 2024 - Milano
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!