Expression bodied members

Wanneer je methoden, constructors of properties schrijft waar exact 1 expressie (1 lijn code die een resultaat teruggeeft) nodig is dan kan je gebruik maken van de expression bodied member syntax (EBM). Deze is van de vorm:

member => expression

Dankzij EBM kan je veel kortere code schrijven.

We tonen telkens een voorbeeld hoe deze origineel is en hoe deze naar EBM syntax kan omgezet worden.

Methoden en EBM

Origineel:

public void ToonLeeftijd(int age)
{
    Console.WriteLine(age);
}

Met EBM:

public void ToonLeetijd(int age) => Console.WriteLine(age);

Nog een voorbeeld, nu met een return. Merk op dat we return niet moeten schrijven:

public int GeefGewicht()
{
    return 4* 34;
}

Met EBM:

public int GeefGewicht() => 4*34;

Constructors en EBM

Ook constructors die maar 1 expressie bevatten kunnen korter nu. Origineel:

class Student
{
    private int age;
    public Student(int inage)
    {
        age = inage;
    }
}

Met EBM:

class Student
{
    private int age;
    public Student(int inage) =>  age = inage;
}

Full Properties met EBM

Properties worden een een soort blend tussen full en autoproperties. Originele full property:

private int name;
public int Name
{
    get
    {
        return name;
    }
    set
    {
        name=value;
    }

}

Met EBM:

private int name;
public int Name
{
    get => name;
    set => name=value;
}

Read-only properties met EBM

Bij read-only properies hoeft het get keyword zelfs niet meer getypt te worden bij EBM.

Origineel:

private int name;
public int Name
{
    get
    {
        return name;
    }
}

Met EBM:

private int name;
public int Name => name;

Last updated