/// <summary> /// Записи, возвращаемые блоком. /// </summary> protected IEnumerable <HealthRecord> GetResultInner(SearchOptions qb) { Contract.Requires(qb != null); // по исключающим блокам не ищем Contract.Requires(qb.IsRoot || !qb.IsExcluding); if (qb.IsGroup) { var searcher = Searcher.Create(session, qb); return(searcher.GetResultForGroup(qb)); } else { return(HrSearcher.Search(session, qb)); } }
/// <summary> /// Записи, возвращаемые корнем. /// </summary> public static IEnumerable <HealthRecord> GetResult(ISession session, SearchOptions qb) { Contract.Requires(qb != null); Contract.Requires(qb.IsRoot); IEnumerable <HealthRecord> hrs; if (qb.IsGroup) { hrs = Searcher.Create(session, qb).GetResultForGroup(qb); } else { hrs = HrSearcher.Search(session, qb); } allHrsCache = null; // следующий поиск снова выбирает все записи, если надо return(hrs); }