Blogginlägg

Två trevliga nyheter i c#7

Av Cecilia Wirén | Blogg | 17 december 2016

Med Visual Studio 2017 kommer C#7 och detta är mina två favoriter bland nyheterna. Visual Studio 2017 är i skrivande stund Release Candidate och du kan ladda hem och börja använda den.

Throw Exception

Det är väldigt vanligt att för dina linsparametrar kontrollera att de inte är null för att sedan tilldela dem till ett fält (klassvariabel) likt följande:
if (person == null)
{ throw new ArgumentException("Person can't be null"); }
_person = person;
Det har länge diskuterats över att lösa null kontroll på inparametrar på  ett enklare sätt och allt från attribut till syntaktiskt socker har föreslagits, lösningen blev så här:
_person = person ?? throw new ArgumentException("Person can't be null");

Out variables

Ganska ofta använder vi oss av en funktion som kräver en out variabel och hälften av gångerna är vi intresserad av vad denna variabel får för resultat men ändå måste vi vara snälla och deklarera den innan funktionsanropet:
int i;
var isNumber = int.TryParse(s, out i);
Detta kan nu lösas i c#7 med följande:
var isNumber = int.TryParse(s, out int i);
Till inlägget