What is the equivalent for expression-bodied members in old C# versions?

291 views Asked by At

In new versions of C# I have discovered recently that exist what is called expression-bodied-members as explained here.

An example of expression-bodied-members would be (for a getter property only):

private int _x;
public int X
{
    get => _x;
}

Is above expression-bodied-member equivalent to below old C# versions?

private int _x;
public int X
{
    get
    {
       return _x;
    }
}
2

There are 2 answers

2
Federico Alterio On BEST ANSWER

These are all equivalent:

private int _x;
public int X => _x;

private int _x;
public int X
{
    get => _x;
}

private int _x;
public int X
{
    get
    {
        return _x;
    }
}
2
Yan Levchenko On

Yes, these expressions are equivalent. Because expression-bodied-members do the same, but only for the single expression.