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
Ridurre il reflow cambiando il CSS
Configurare automaticamente un webhook in Azure DevOps
Documentare i servizi REST con Swagger e OpenAPI con .NET 9
Keynote .NET Conference Italia 2025
Personalizzare le pagine di errore su Azure App Service
Abilitare .NET 10 su Azure App Service e Azure Functions
Utilizzare DeepSeek R1 con Azure AI
Definire il metodo di rilascio in .NET Aspire
Usare la libreria PredicateBuilder per eseguire query tramite Entity Framework che usano or su più campi
Effettuare un clone parziale di un repository di GitHub
Gestire codice JavaScript con code splitting e lazy loading
Disabilitare le run concorrenti di una pipeline di Azure DevOps


