Tra le novità di C# 6 c'è la possibilità di utilizzare l'attributo nameof, per convertire in stringa il nome di una variabile o di un oggetto. Per capire esattamente l'utilità di nameof, osserviamo il seguente codice:
switch (e.PropertyName) { //caso con nameof case nameof(PropertyOne): { break }; //caso senza nameof case "PropertyTwo": { break;} }
Nel primo caso, rinominare la proprietà applicherà la modifica anche all'interno del case, fattore che garantirà l'integrità del codice. Nel secondo caso, invece, la ridenominazione non avverrà, lasciando il codice in una situazione di inconsistenza.
Un altro caso in cui potrebbe risultare utile nameof è quando viene scatenata una ArgumentNullException: potrebbe esserci utile capire su quale argomento si sia verificato l'errore.
(if number == null) throw new ArgumentNullException(nameof(number));
E' possibile usare nameof anche con proprietà di oggetti, come mostra il seguente codice:
nameof(school.Year.Student)
In questo caso verrà stampato solamente stampato solamente il nome della classe, cioè Student.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Potenziare Azure AI Search con la ricerca vettoriale
Mascherare l'output di un valore all'interno dei log di un workflow di GitHub
Effettuare il binding di date in Blazor
Determinare lo stato di un pod in Kubernetes
Effettuare chiamate con versioning da Blazor ad ASP.NET Core
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Gestire i null nelle reactive form tipizzate di Angular
Usare un KeyedService di default in ASP.NET Core 8
Effettuare il download di un file via FTP con la libreria FluentFTP di .NET
Creare un'applicazione React e configurare Tailwind CSS
Come migrare da una form non tipizzata a una form tipizzata in Angular
Esportare ed analizzare le issue di GitHub con la CLI e GraphQL