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
Log streaming di una Azure Container App
Introduzione al nuovo tipo DateOnly di .NET
Conversione di tipo in una pipeline di Azure DevOps
Versioning dei pacchetti NuGet in Visual Studio 2019
Dichiarare una struct come record in C#
Versionare automaticamente un file di progetto .NET Core con una pipeline YAML di Azure DevOps
Integrare e trasformare dati con Azure Data Factory
ASP.NET Core & Blazor 6
Monitorare i costi di Azure con i budget
Code reviewers as code in GitHub
Compilare automaticamente applicazioni .NET 6 con le pipeline di Azure DevOps e GitHub Action
Gestire il polimorfismo nella serializzazione con System.Text.Json
I più letti di oggi
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- 'ASP.NET 2.0 per tutti': il nuovo libro a cura di ASPItalia.com
- Realizzare un UriMapper in Windows Phone
- Creare semplici menu a tendina con MenuFlyout di Windows 8.1
- Impostare titolo, icone e splash screen di un'applicazione Silverlight per Windows Phone