当前,如果要为类声明一个属性,请编写以下代码:
public string Target { get; set; }
现在使用IList(泛型),我做这样的事情:
IList<Result> _Results;
public IList<Result> Results
{
get
{
if (_Results == null)
_Results = new List<Result>();
return _Results;
}
set
{
_Results = value;
}
}
在get
部分中,我检查列表是否为空,然后我将创建一个新列表...
我该如何避免这一部分,并拥有越来越少的代码?
答案 0 :(得分:2)
如果使用C#6,则可以使用null-coalesce运算符??
:
IList<Result> _Results;
public IList<Result> Results
{
get => _Results ?? (_Results = new List<Result>());
set
{
_Results = value;
}
}
答案 1 :(得分:1)
在C#6或更高版本中,您可以执行以下操作:
public IList<Result> Results { get; set; } = new List<Result>();