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 Intersect e Except per filtrare set di dati in TSql
Integrare SQL Server in un progetto .NET Aspire
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Utilizzare WebJobs su Linux con Azure App Service
Configurare e gestire sidecar container in Azure App Service
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
Eseguire query in contemporanea con EF
Managed deployment strategy in Azure DevOps
Sfruttare GPT-4o realtime su Azure Open AI per conversazioni vocali
Creare una libreria CSS universale: Immagini
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Eseguire una ricerca avanzata per recuperare le issue di GitHub