对于NHibernate实体类中的子对象集合,使用IList
,IEnumerable
,ISet
或ICollection
有什么区别?即:在NHibernate中使用IList,IEnumerable,ISet或ICollection有什么区别?
public class Parent
{
public virtual int IdParent { set; get; }
public virtual IList<Child> Childs { set; get; }
// Or
public virtual ISet<Child> Childs { set; get; }
// Or so on...
}
我会使用'ICollection'作为包'IList '暗示有一个命令和一个索引 –
cremor
您是否将IList扩展为不支持双向关系?我们将所有集合都暴露为IEnumerable作为属性和IList作为后台字段,并且我们没有双向关系问题。 – epitka