С готовностью загрузить рекурсивное отношение
У меня есть рекурсивное отношение один ко многим, для которого по умолчанию используется значение lazy, равное true. Какой код я могу написать для API NH, который будет эффективно извлекать ВСЕ дерево, КАК ЕСЛИ у меня ленивый = "ложный" на отображение подкатегорий?
Вот's рекурсивное отношение один ко многим:
...
Я нене указывать ленивый = "ложный" в списке, так как лень требуется примерно в половине запросов, которые мне нужно выполнить. У меня есть fetch = "подвыборка» в списке в качестве оптимизации, когда мне удается получить все дерево.
мы опробовали API ICriteria:
session.CreateCriteria().SetFetchMode( "SubCategories", FetchMode.Eager ).Add( Restrictions.IsNull("ParentCategory") ).SetResultTransformer( CriteriaSpecification.DistinctRootEntity ).List();
но это только нетерпеливо загружен только первый уровень в иерархии.