C# 6 permette di creare metodi e proprietà in sola lettura utilizzando una lambda expression. Con C# 7 è stata aggiunta la possibilità di creare proprietà comprensive di getter e setter, costruttori e distruttori utilizzando una lambda expression come visibile nell'esempio.
public class Person { public Person(string name) => this.Name = name; ~Person() => Debug.WriteLine("Person finalizer"); private string _name; public string Name { get => _name; set => _name = value ?? "name"; } }
Esattamente come in C# 6, questa sintassi è valida per una lambda che esprime un'espressione, non si può utilizzare una lambda che definisce un metodo con più istruzioni.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare la funzione EF.Parameter per forzare la parametrizzazione di una costante con Entity Framework
Ordine e importanza per @layer in CSS
Simulare Azure Cosmos DB in locale con Docker
Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
Definire stili a livello di libreria in Angular
Disabilitare automaticamente un workflow di GitHub
Ordinare randomicamente una lista in C#
Utilizzare un numero per gestire la concorrenza ottimistica con SQL Server ed Entity Framework
Usare le navigation property in QuickGrid di Blazor
Migliorare l'organizzazione delle risorse con Azure Policy
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Sfruttare gli embedding e la ricerca vettoriale con Azure SQL Database