Ein neues Feature von C# 6.0 ist der Null-Conditional Operator.
Eine Referenzvariable kann einen Null Wert haben oder auf eine Instanz des passenden Types verweisen. Um eine NullReferenceException zu vermeiden sieht man nun häufig Code-Snippets ähnlich dem folgenden:
1 2 3 4 5 6 | string testString = DateTime.Now.Hour == 5 ? "Five" : null ;
string ergebnisString;
if (testString != null )
ergebnisString = testString.Substring(0, 1);<br>
|
1 2 | ergebnisString = testString?.Substring(0, 1);
|
Wenn sTest nicht Null ist, wird die Substring Methode aufgerufen und Ihr Resultat sLeft zugewiesen. Wenn sTest Null ist, gibt die Expression Null zurück, also wird sLeft ein Null Wert zugewiesen.
Und für mehr Infos zu C# empfehle ich einen Kurs bei der ppedv.