Quando aggiungiamo un attributo su un metodo, può capitare di dover passare, come parametro dell'attributo, il nome di un parametro del metodo. Fino a C# 10, il nome del parametro può essere specificato solamente passando la stringa e questo comporta lo svantaggio che in caso di cambio del nome del parametro senza aggiornamento della stringa nell'attributo, non ci accorgiamo dell'errore se non a run time.
Con l'avvento di C# 11, possiamo utilizzare il metodo nameof per referenziare i nomi dei parametri del metodo su cui applichiamo un attributo. Il prossimo esempio mostra il codice necessario fino a C# 10 e quello da scrivere con C# 11.
//C# 10 [MyCustomAttribute("myparam"))] public void MyMethod(string myparam) { } //C# 11 [MyCustomAttribute(nameof(myparam))] public void MyMethod(string myparam) { }
Grazie all'utilizzo di nameof possiamo ottenere un controllo in fase di compilazione e accorgerci subito di eventuali errori.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare Containers in .NET Aspire
Autenticazione di git tramite Microsoft Entra ID in Azure DevOps
Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
Gestione file Javascript in Blazor con .NET 9
Supportare la crittografia di ASP.NET Core con Azure Container App
Gestire gli accessi con Token su Azure Container Registry
Anonimizzare i dati sensibili nei log di Azure Front Door
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Eseguire una ricerca avanzata per recuperare le issue di GitHub
Gestire eccezioni nei plugin di Semantic Kernel in ASP.NET Core Web API
Utilizzare il metodo IntersectBy per eseguire l'intersection di due liste
Creare una libreria CSS universale: Cards