Uno degli operatori di C# è il cosiddetto operatore ternario ?:, detto anche operatore condizionale, che permette di restituire una fra due espressioni, a seconda che una condizione risulti vera o falsa.In pratica esso permette di abbreviare un costrutto if/else (il prossimocapitolo) utilizzando una sola …
Leggi di piùQuiz C# – n. 4 {try/catch/finally}
Qual è l’output stampato dal seguente programma in C#?
Leggi di piùImplementazione asincrona del metodo Main
A partire da C# 7.1 il metodo Main può essere implementato in versione asincrona, aggiungendo il modificatore async alla sua firma e rendendo così più semplice l’esecuzione di operazioni asincrone al suo interno, tramite l’utilizzo della parola chiave await.Quindi, oltre alle versioni classiche del Main, …
Leggi di piùDichiarazione e utilizzo di funzioni locali in C#
A partire da C# 7.0 il linguaggio supporta i metodi o funzioni locali. Capita spesso che un metodo di una classe C# sia utile e debba essere invocato solo all’interno di un altro. Supponiamo per esempio di avere implementato un metodo per il calcolo del …
Leggi di piùQuiz C# – n.1
Qual è il risultato stampato dal seguente programma C#?
Leggi di piùUtilizzo delle variabili discard in C#
A partire dalla versione 7.0, C# supporta il concetto delle variabili discard o di scarto, per mezzo delle quali è possibile evitare l’uso di variabili temporanee in diversi ambiti, risparmiandone quindi la dichiarazione e soprattutto l’allocazione in memoria. Per utilizzare una variabile discard, basta usare …
Leggi di piùDedurre i nomi degli elementi di una tupla
Come ricavare in maniera automatica i nomi degli elementi di una tupla in C#
Leggi di piùStoria delle versioni di C#
Mi capita spesso di ricercare in quale versione di C# è stata introdotta una certa funzionalità, o al contrario, voler capire quali sono le novità introdotte in una data versione. Una mia storia delle versioni di C# è naturalmente presente nelle varie edizioni del mio …
Leggi di piùEspressioni lambda e ricorsione
Una espressione lambda può essere ricorsiva. Quindi è possibile invocare la stessa funzione, assegnando l’espressione lambda ad una variabile, e naturalmente assicurandosi che ci sia sempre una condizione di uscita, per evitare che la ricorsione sia infinita. Ecco un esempio che calcola il classico fattoriale …
Leggi di piùUtilizzare la sintassi di C# 6 nelle razor view di ASP.NET MVC
Effettuando l’upgrade di alcuni vecchi progetti ASP.NET MVC, e volendo utilizzare novità di C# 6, ormai irrinunciabili, per esempio operatore nameof o sintassi come quella delle stringhe interpolate, nelle Razor View, ho scoperto che, se non si vuol passare alla versione MVC 6, è necessario …
Leggi di più