Quelqu'un peut-il m'expliquer comment fonctionne ce code?Classe C# sans constructeur explicite et propriété en lecture seule
public class Person
{
readonly List<Person> _children = new List<Person>();
public IList<Person> Children
{
get { return _children; }
}
public string Name { get; set; }
}
public static Person GetFamilyTree()
{
return new Person
{
Name = "David Weatherbeam",
Children =
{
new Person
{
Name="Alberto Weatherbeam",
Children=
{
new Person
{
Name="Jenny van Machoqueen",
Children=
{
new Person
{
Name="Nick van Machoqueen",
},
new Person
{
Name="Matilda Porcupinicus",
}
}
}
}
}
}
};
}
La propriété 'Children' est 'en lecture seule' (car elle n'a pas de setter). La fonction 'GetFamilyTree' semble utiliser un initialiseur implicite qui convient à la propriété 'Name' car il peut être accédé en dehors de 'Person' mais comment la propriété 'Children' peut-elle être affectée à cette fonction?
Merci pour vos explications. À la vôtre.
Merci dbc! –