Mam właściwość określona jako ...C# obiektu z zakodowanego getter i setter
public List<Obj> Objs { get; set; }
Co chciałbym być w stanie zrobić, to włożyć trochę logiki do metody GET, tak to będzie wyglądać coś jak ...
public List<Obj> Objs
{
get
{
if (Objs == null)
{
Objs = new List<Obj>();
}
if (Objs.Count < 1)
{
Objs.Add(new Obj());
}
return Objs;
}
set { Objs = value; }
}
teraz gdy to zrobić pojawia się błąd informujący mnie, że funkcja jest rekurencyjna na wszystkich ścieżkach.
Czy można to zrobić bez tworzenia prywatnego pola wsparcia?
Nie rób tego.http://msdn.microsoft.com/en-us/library/ms182327.aspx – SLaks
Dlaczego nie możesz tego zrobić z polem pomocniczym? – Default
To niesamowite, jak kreatywni są ludzie, jeśli chodzi o nadużycie systemu, z którym pracują. I na szczęście kompilator był na tyle sprytny, by wiedzieć, że próbujesz nadużywać systemu, w przeciwnym razie pytanie brzmiałoby: "Dlaczego moja aplikacja się zawiesza". –