0

我需要一个解决方案:如何拦截 ISet.Add 方法,所以我不需要做 children.Parent=parent,但只是 parent.Children.Add(children);

public class MyClass
{
public MyClass Parent;
public ISet<MyClass> Childrens;
}

我想做这个:

var mc = new MyClass();
var mc2 = new MyClass();
mc.Childrens.Add(mc2);

并不是

var mc = new MyClass();
var mc2 = new MyClass();
mc.Childrens.Add(mc2);
mc2.Parent=mc;
4

2 回答 2

3

我只是创建了一个AddChild方法来做到这一点。

正如 Frederik 演示的那样,您还可以将公共属性公开为只读集合......

NHibernate 中只读列表的最佳实践是什么

于 2010-07-06T15:06:07.250 回答
0
public IList<MyClass> Childrens
于 2010-07-06T15:05:53.193 回答