NHibernate - 如何急切加载整个对象图,然后将其与所有子孙一起缓存

时间:2012-04-02 06:52:00

标签: nhibernate

我不了解以下情况。我有一种情况,我需要加载子孙和一个实体。我已指定集合是延迟加载的,但是急切地使用分离的条件获取所有行,并将setfetchmode提取到eager。我有以下问题:

  1. NHibernate花费很长时间来对象进行水合 - 虽然实际的查询运行得很快。
  2. 我将结果列表放入.net MemoryCacheManager对象中,似乎在一段时间后,孙子们似乎退出了对象并得到了一个延迟加载异常。
  3. 如何确保结果返回的整个图形在MemoryCacheManager对象中保持一致? session.Evict会帮助我吗?

1 个答案:

答案 0 :(得分:1)

使用QueryOver未来查询结束并将结果展平为DTO并最终缓存DTO。