public List<string> MembershipIds
{
get;
set;
} = new List<string>();
我收到了无效令牌
在类,结构或接口成员声明中“=”。
这是C#6功能。如何将其转换为C#5?
答案 0 :(得分:13)
在保留自动财产的同时,没有简单的方法。
如果您不需要自动属性,请将代码转换为使用私有变量和非自动属性:
app.autodiscover_tasks(['foo', bar'])
如果确实需要auto-property,则需要在构造函数中进行赋值:
private List<string> membershipIds = new List<string>();
public List<string> MembershipIds {
get { return membershipIds; }
set { membershipIds = value; }
}
答案 1 :(得分:4)
此功能称为属性的默认值,它的作用是将赋值部分插入{{1>}的构造函数 }。
将代码更改为以下代码在该属性的支持字段上执行相同操作,而无需更改所有构造函数,并且C#5.0支持它:
class