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
Supportare la sessione affinity di Azure App Service con Application Gateway
Inference di dati strutturati da testo con Semantic Kernel e ASP.NET Core Web API
Generare velocemente pagine CRUD in Blazor con QuickGrid
Testare l'invio dei messaggi con Event Hubs Data Explorer
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT
Utilizzare WhenEach per processare i risultati di una lista di task
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
Managed deployment strategy in Azure DevOps
Utilizzare Container Queries nominali
Utilizzare i variable font nel CSS
Utilizzare Azure Cosmos DB con i vettori
Usare i servizi di Azure OpenAI e ChatGPT in ASP.NET Core con Semantic Kernel