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 un numero per gestire la concorrenza ottimistica con SQL Server ed Entity Framework
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
L'evoluzione di Blazor in .NET 8
Implementare l'infinite scroll con QuickGrid in Blazor Server
Creare una custom property in GitHub
Usare un KeyedService di default in ASP.NET Core 8
Hosting di componenti WebAssembly in un'applicazione Blazor static
Effettuare lo stream della risposta in ASP.NET Core tramite IAsyncEnumerable
Generare la software bill of material (SBOM) in GitHub
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Eseguire una GroupBy per entity in Entity Framework
Utilizzare la session affinity con Azure Container Apps
I più letti di oggi
- Gli oggetti CallOut di Expression Blend 4.0
- Configurazione tramite environment variable in ASP.NET Core
- Controllare gli accessi IP alle app con Azure Container Apps
- Creare applicazioni web native con Electron
- Utilizzare le sequence di SQL Server in Entity Framework Core
- Update NoDo di marzo 2011 di Windows Phone in fase di distribuzione
- Tile, notifiche e background task in Windows Phone 8
- Mantenere l'ordine dei dati in una query PLINQ