private List <DicomAttributeCollection> StudyQuery(DicomAttributeCollection queryCriteria)
 {
     try
     {
         var filters = new StudyPropertyFilters(queryCriteria);
         var results = filters.Query(_context.Studies);
         return(filters.ConvertResultsToDataSets(results));
     }
     catch (Exception e)
     {
         throw new Exception("An error occurred while performing the study root query.", e);
     }
 }
        private IEnumerable <Study> GetStudies(StudyEntry criteria)
        {
            try
            {
                //TODO (Marmot): make extended data queryable, too?
                DicomAttributeCollection dicomCriteria;
                if (criteria == null || criteria.Study == null)
                {
                    dicomCriteria = new DicomAttributeCollection();
                }
                else
                {
                    dicomCriteria = criteria.Study.ToDicomAttributeCollection();
                }

                var filters = new StudyPropertyFilters(dicomCriteria);
                var results = filters.Query(_context.Studies);
                return(results);
            }
            catch (Exception e)
            {
                throw new Exception("An error occurred while performing the study query.", e);
            }
        }