c#{ get=>num;set=>num=value;}报错怎么更改,什么意思😭

public datatime a{get=>num;set=>num=12;}

这种写法是C# 7的新语法,名叫Expression-bodied members

其实在C# 6中就已经引入了Expression-bodied members,但在C# 6中,只能用于对方法(Method)和只读属性,C# 7中支持可读写属性这样写,如下:

public class A
{
    private int num1;
    private int num2;

    public int Num1
    {
        get => num1;
        set => num1 = value;
    }

    public int Num2
    {
        get => num2;
        set => num2 = value;
    }
}

再对比方法的写法:


// 原来的写法

public int Add(int x, int y)
{
     return x+y;
}

//Expression-bodied members的写法
public int Add(int x, int y)=> x+y;

你这是哪国的C#语法
public datatime a{get{return num;} set{num=value;}}