|
1
1
Many-to-One
Many-to-Many with a join table
通过在第一次访问中仅延迟加载整个子集合,然后在后续的“页面”上索引它,最后的查询可能会或可能不会更有效地完成。这取决于你的数据和使用情况。 除非我事先知道子集合将是巨大的,否则我将首先采用延迟加载路径。如果计时和 profiling 显示严重的缓慢,然后我会切换到标准方法。 |
|
|
2
0
我有一个和你一样的案子。我有一个配置类,可以是全局配置、项目特定配置或用户特定配置。我所做的是:
就这样对我有效。如何访问id为55的用户的配置如下: 我不使用someUser.ConfigurationList,因为它很慢。我只映射父对象,以便在HQL中执行此操作(速度更快):
为了获得全局配置,我将执行以下操作:
经过反思,我认为如果您决定使用HQL,甚至可以删除集合映射。 注意:我在NHibernate的早期使用过标准,但后来我发现HQL对我来说更强大一些,其他人对此可能有不同的看法。 |