Exemplo n.º 1
0
        /// <summary>
        /// Aggregate the events in this query to the type T
        /// </summary>
        /// <param name="queryable"></param>
        /// <param name="state"></param>
        /// <typeparam name="T"></typeparam>
        /// <returns></returns>
        public static T AggregateTo <T>(this IMartenQueryable <IEvent> queryable, T state = null) where T : class
        {
            var events = queryable.ToList();

            if (!events.Any())
            {
                return(null);
            }

            var session    = queryable.As <MartenLinqQueryable <IEvent> >().Session;
            var aggregator = session.Options.Projections.AggregatorFor <T>();

            var aggregate = aggregator.Build(queryable.ToList(), session, state);

            return(aggregate);
        }
Exemplo n.º 2
0
 public IBatchedQueryable <T> Include <TInclude>(Expression <Func <T, object> > idSource, IList <TInclude> list) where TInclude : class
 {
     _inner = _inner.Include(idSource, list);
     return(this);
 }
Exemplo n.º 3
0
 public IBatchedQueryable <T> Include <TInclude>(Expression <Func <T, object> > idSource, Action <TInclude> callback) where TInclude : class
 {
     _inner = _inner.Include(idSource, callback);
     return(this);
 }
Exemplo n.º 4
0
 public PractitionerIncludeMapper(IMartenQueryable <Practitioner> queryable) : base(queryable)
 {
 }
Exemplo n.º 5
0
 public Task <long> Count <TDoc>(IMartenQueryable <TDoc> queryable)
 {
     return(AddItem(queryable.ToLinqQuery().ToCount <long>(), null));
 }
Exemplo n.º 6
0
 public TransformedBatchQueryable(BatchedQuery parent, IMartenQueryable <TValue> inner)
 {
     _parent = parent;
     _inner  = inner;
 }
Exemplo n.º 7
0
 public Task <T> First <T>(IMartenQueryable <T> queryable)
 {
     return(addItem <T, T>(queryable, LinqConstants.FirstOperator));
 }
Exemplo n.º 8
0
 public Task <long> Count <TDoc>(IMartenQueryable <TDoc> queryable)
 {
     return(addItem <TDoc, long>(queryable, LinqConstants.LongCountOperator));
 }
 public static IQueryable<string> AsJson<T>(this IMartenQueryable<T> queryable)
 {
     return queryable.Select(x => x.AsJson());
 }
Exemplo n.º 10
0
 public BatchedOrderedQueryable(BatchedQuery parent, IMartenQueryable <T> inner) : base(parent, inner)
 {
 }
Exemplo n.º 11
0
 public MartenDataQuery(IMartenQueryable <T> queryable)
 => _queryable = queryable;
Exemplo n.º 12
0
 /// <summary>
 /// Aggregate the events in this query to the type T
 /// </summary>
 /// <param name="queryable"></param>
 /// <param name="state"></param>
 /// <param name="token"></param>
 /// <typeparam name="T"></typeparam>
 /// <returns></returns>
 public static async Task <T> AggregateToAsync <T>(this IMartenQueryable <IEvent> queryable, T state = null,
                                                   CancellationToken token = new ()) where T : class
Exemplo n.º 13
0
 public IBatchedQueryable <T> Include <TInclude, TKey>(Expression <Func <T, object> > idSource, IDictionary <TKey, TInclude> dictionary,
                                                       JoinType joinType = JoinType.Inner) where TInclude : class
 {
     _inner = _inner.Include(idSource, dictionary, joinType);
     return(this);
 }
Exemplo n.º 14
0
 public IBatchedQueryable <T> Include <TInclude, TKey>(Expression <Func <T, object> > idSource,
                                                       IDictionary <TKey, TInclude> dictionary) where TKey : notnull where TInclude : class
 {
     _inner = _inner.Include(idSource, dictionary);
     return(this);
 }
Exemplo n.º 15
0
 public BatchedQueryable(BatchedQuery parent, IMartenQueryable <T> inner)
 {
     _parent = parent;
     _inner  = inner;
 }
Exemplo n.º 16
0
 public Task <bool> Any <TDoc>(IMartenQueryable <TDoc> queryable)
 {
     return(addItem <TDoc, bool>(queryable, LinqConstants.AnyOperator));
 }
Exemplo n.º 17
0
 public IBatchedQueryable <T> Stats(out QueryStatistics stats)
 {
     _inner = _inner.Stats(out stats);
     return(this);
 }
Exemplo n.º 18
0
        internal Task <IReadOnlyList <T> > Query <T>(IMartenQueryable <T> queryable)
        {
            var handler = queryable.As <MartenLinqQueryable <T> >().BuildHandler <IReadOnlyList <T> >();

            return(AddItem(handler));
        }
Exemplo n.º 19
0
 public IBatchedQueryable <T> Where(Expression <Func <T, bool> > predicate)
 {
     _inner = _inner.Where(predicate).As <IMartenQueryable <T> >();
     return(this);
 }
Exemplo n.º 20
0
 public Task <T> SingleOrDefault <T>(IMartenQueryable <T> queryable)
 {
     return(addItem <T, T>(queryable, LinqConstants.SingleOrDefaultOperator));
 }
Exemplo n.º 21
0
 public IBatchedQueryable <T> Take(int count)
 {
     _inner = _inner.Take(count).As <IMartenQueryable <T> >();
     return(this);
 }
Exemplo n.º 22
0
 public Task <bool> Any <TDoc>(IMartenQueryable <TDoc> queryable)
 {
     return(AddItem(queryable.ToLinqQuery().ToAny(), null));
 }
Exemplo n.º 23
0
 public IBatchedQueryable <T> OrderByDescending <TKey>(Expression <Func <T, TKey> > expression)
 {
     _inner = _inner.OrderByDescending(expression).As <IMartenQueryable <T> >();
     return(this);
 }
Exemplo n.º 24
0
        public Task <T> SingleOrDefault <T>(IMartenQueryable <T> queryable)
        {
            var query = queryable.ToLinqQuery();

            return(AddItem(OneResultHandler <T> .SingleOrDefault(query), queryable.Statistics));
        }
Exemplo n.º 25
0
 public PracticeIncludeMapper(IMartenQueryable <Practice> queryable) : base(queryable)
 {
 }