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
Gestire progetti .NET + React in .NET Aspire
Gestire i dati con Azure Cosmos DB Data Explorer
Escludere alcuni file da GitHub Secret Scanning
Utilizzare l'espressione if inline in una pipeline di Azure DevOps
Gestione degli eventi nei Web component HTML
.NET Conference Italia 2024
Applicare un filtro per recuperare alcune issue di GitHub
Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
Abilitare automaticamente il force push di un gruppo su Azure DevOps
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
Utilizzare Intersect e Except per filtrare set di dati in TSql
Change tracking e composition in Entity Framework
I più letti di oggi
- Documentare i servizi REST con Swagger e OpenAPI con .NET 9
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- .NET Conference Italia 2024 - Milano
- Gestione CSS in Blazor con .NET 9