in my C#-project, I have a class which contains a List
public class MyClass { public MyClass parent; public List children; ... }
Beside of implementing your own IList you could return a ReadOnlyCollection.
IList
public MyClass { public MyClass Parent; private List children; public ReadOnlyCollection Children { get { return children.AsReadOnly(); } } }