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
Utilizzare le direttive più importanti in una file based app .NET
Logica Graceful Degradation in HTML e CSS
Ottimizzare gli indici con Automatic Index Compaction in Azure SQL Database
Utilizzare i named query filter di Entity Framework
Eseguire i pre-commit hook di git con dependabot
Operazioni tra insiemi di array in Javascript
Utilizzo del persistent state di Blazor nel prerendering
Gestire pubblicazione Kubernetes tramite .NET Aspire
Il nuovo persistent state in Blazor
Planning & Specification Driven Development + GitHub Copilot
Migrare applicazioni legacy nel cloud con Azure App Service Managed Instance
Utilizzare le View Transition API di JavaScript


