NHibernate中的延迟加载集合应该给我一个NullReferenceException吗?我在如下所示的方法中得到一个异常:
public void Test(ISession session, int id)
{
var entity = session.Load<MyEntity>(id);
entity.LazyLoadedCollection.Add(SomeItem);
}对LazyLoadedCollection的调用正在抛出。我的映射如下所示:
<bag lazy="true" table="MyTable">
<key>
<column name="LazyLoadedCollection" />
</key>
<many-to-many class="LazyLoadedItem">
<column name="LazyLoadedItemId" />
</many-to-many>
</bag>这是NHibernate中的预期行为吗?
发布于 2010-01-26 04:41:10
如果看不到您的类就很难说,但是您可能没有意识到的一件事是,您需要在类的构造函数中填充每个集合。
NHibernate会在某些时候用它自己的集合替换这些集合,但您仍然需要确保它们最初填充了HashedSet<T>、List<T>或其他类型,这取决于您使用的接口。
发布于 2010-01-26 04:35:32
不,不是。这不是在互联网上提问的好方法。
如果你不发布抛出异常的代码并告诉我们异常是从哪里来的,那么就不可能给你一个方向。
https://stackoverflow.com/questions/2135370
复制相似问题