Beispiel #1
0
        public GenericFluentEventQuery <T> EventQuery <T, TSort>(DateTime fromDate, DateTime toDate, ISortableLimit limit, int limitCount, ISortOrder sortOrder, Expression <Func <T, TSort> > sortProperty, string queryName = "ChronologicalQuery") where T : new()
        {
            var populatedSortProperty = Property <TSort> .Create(sortProperty);

            var populatedSort  = Sort.Create(sortOrder, populatedSortProperty);
            var populatedLimit = Limit.CreateLimit(limit, limitCount, populatedSort);

            return(new GenericFluentEventQuery <T>(queryName, Search.Span(fromDate, toDate), populatedLimit, this));
        }
        public GenericFluentEventQuery <T> EventQuery <T>(DateTime fromDate, DateTime toDate, INonSortableLimit limit, int limitCount, string queryName = "ChronologicalQuery") where T : new()
        {
            var populatedLimit = Limit.CreateLimit(limit, limitCount);

            if (WebRequestChannel == WebRequestChannel.Http)
            {
                return(new GenericFluentEventQuery <T>(queryName, Search.Span(fromDate, toDate), populatedLimit, this, new EventApiRepository(new HttpRepository(this))));
            }

            return(new GenericFluentEventQuery <T>(queryName, Search.Span(fromDate, toDate), populatedLimit, this));
        }
Beispiel #3
0
        public GenericFluentEventQuery <T> EventQuery <T>(DateTime fromDate, DateTime toDate, INonSortableLimit limit, int limitCount, string queryName = "ChronologicalQuery") where T : new()
        {
            var populatedLimit = Limit.CreateLimit(limit, limitCount);

            return(new GenericFluentEventQuery <T>(queryName, Search.Span(fromDate, toDate), populatedLimit, this));
        }
Beispiel #4
0
        public Aggregate <T, TY, TZ> UniqueValues <TY, TZ>(Expression <Func <T, TY> > property, int take, TZ child)
        {
            var populatedLimit = Limit.CreateLimit(Limit.Take, take);

            return(new UniqueValuesAggregate <T, TY, TZ>(Property <TY> .Create(property), populatedLimit, child));
        }