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 ExecuteUpdate per aggiornare colonne JSON in Entity Framework
Controllare la telemetria con .NET Aspire
Integrare Agenti A2A in Azure API Management
Utilizzo delle stepped value functions nel CSS
Evitare la compressione degli artefatti in un workflow di GitHub
Abilitare automaticamente il force push di un gruppo su Azure DevOps
Creare comandi nella dashboard .NET Aspire
Evitare memory leaks nelle closure JavaScript
Proteggere l'endpoint dell'agente A2A delle Logic App
Eliminare record doppi in Sql Server
Mappare una complex property di una entity su un campo JSON
Utilizzare zizmor per rendere più sicuri i workflow di GitHub




