首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NHibernate -惰性加载的集合

NHibernate -惰性加载的集合
EN

Stack Overflow用户
提问于 2010-01-26 04:26:00
回答 2查看 755关注 0票数 0

NHibernate中的延迟加载集合应该给我一个NullReferenceException吗?我在如下所示的方法中得到一个异常:

代码语言:javascript
复制
public void Test(ISession session, int id)
{
    var entity = session.Load<MyEntity>(id);
    entity.LazyLoadedCollection.Add(SomeItem);
}

对LazyLoadedCollection的调用正在抛出。我的映射如下所示:

代码语言:javascript
复制
<bag lazy="true" table="MyTable">
  <key>
    <column name="LazyLoadedCollection" />
  </key>
  <many-to-many class="LazyLoadedItem">
    <column name="LazyLoadedItemId" />
  </many-to-many>
</bag>

这是NHibernate中的预期行为吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-01-26 04:41:10

如果看不到您的类就很难说,但是您可能没有意识到的一件事是,您需要在类的构造函数中填充每个集合。

NHibernate会在某些时候用它自己的集合替换这些集合,但您仍然需要确保它们最初填充了HashedSet<T>List<T>或其他类型,这取决于您使用的接口。

票数 2
EN

Stack Overflow用户

发布于 2010-01-26 04:35:32

不,不是。这不是在互联网上提问的好方法。

如果你不发布抛出异常的代码并告诉我们异常是从哪里来的,那么就不可能给你一个方向。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2135370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档