在我的应用程序中,我使用NHibernate和WinForms DataBindings。我的映射类使用Iesi.Collections命名空间中推荐的Set接口。我尝试将这样的NHibernate Set绑定为DataSource,例如:
...
Iesi.Collections.Generic.ISet<SubType> set = myEntity.Referencedentities;
bindingSource.DataSource = set;
当我尝试添加一个新行(由我的网格完成,但是当我自己执行此操作时也是这样)时,它会引发异常:
bindingSource.AddNew();
InvalidOperationException: Item cannot be added to a read-only or fixed-size list.
但是直接在代码中添加新条目:
set.Add(new SubType());
为什么在使用这些Set实现时无法向DataBinding添加新行?