У меня есть свойство
public static List<int> intItems
{
get { return _intItems ?? new List<int>(); }
set { _intItems = value; }
}
private static List<int> _intItems;
, которое надежно, никогда не имеет значения null.Но когда я Add
значение для него, оно не работает.
intItems.Add(1);
Console.WriteLine(intItems.First()); //indexoutofrangeexception
Чтобы сделать эту работу, я должен сначала присвоить значение приватному полю, чтобы включить ссылочный доступ:
public static List<int> intItems
{
get
{
if (_intItems == null)
{
_intItems = new List<int>();
}
return _intItems;
}
set { _intItems = value; }
}
Мой вопрос: есть ли более элегантный способ, чем свойство с 12 строками кода?У меня есть несколько таких.