Class AggregateFluentBase<TResult>
- Namespace
- MongoDB.Driver
- Assembly
- MongoDB.Driver.dll
public abstract class AggregateFluentBase<TResult> : IOrderedAggregateFluent<TResult>, IAggregateFluent<TResult>, IAsyncCursorSource<TResult>
Type Parameters
TResult
- Inheritance
-
AggregateFluentBase<TResult>
- Implements
-
IAsyncCursorSource<TResult>
- Inherited Members
-
Constructors
AggregateFluentBase()
protected AggregateFluentBase()
Properties
Database
public virtual IMongoDatabase Database { get; }
Property Value
- IMongoDatabase
Options
public abstract AggregateOptions Options { get; }
Property Value
- AggregateOptions
Stages
public abstract IList<IPipelineStageDefinition> Stages { get; }
Property Value
- IList<IPipelineStageDefinition>
Methods
AppendStage<TNewResult>(PipelineStageDefinition<TResult, TNewResult>)
public abstract IAggregateFluent<TNewResult> AppendStage<TNewResult>(PipelineStageDefinition<TResult, TNewResult> stage)
Parameters
stage
PipelineStageDefinition<TResult, TNewResult>
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TNewResult
As<TNewResult>(IBsonSerializer<TNewResult>)
public abstract IAggregateFluent<TNewResult> As<TNewResult>(IBsonSerializer<TNewResult> newResultSerializer)
Parameters
newResultSerializer
IBsonSerializer<TNewResult>
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TNewResult
BucketAuto<TValue>(AggregateExpressionDefinition<TResult, TValue>, int, AggregateBucketAutoOptions)
public virtual IAggregateFluent<AggregateBucketAutoResult<TValue>> BucketAuto<TValue>(AggregateExpressionDefinition<TResult, TValue> groupBy, int buckets, AggregateBucketAutoOptions options = null)
Parameters
groupBy
AggregateExpressionDefinition<TResult, TValue>
buckets
int
options
AggregateBucketAutoOptions
Returns
- IAggregateFluent<AggregateBucketAutoResult<TValue>>
Type Parameters
TValue
BucketAuto<TValue, TNewResult>(AggregateExpressionDefinition<TResult, TValue>, int, ProjectionDefinition<TResult, TNewResult>, AggregateBucketAutoOptions)
public virtual IAggregateFluent<TNewResult> BucketAuto<TValue, TNewResult>(AggregateExpressionDefinition<TResult, TValue> groupBy, int buckets, ProjectionDefinition<TResult, TNewResult> output, AggregateBucketAutoOptions options = null)
Parameters
groupBy
AggregateExpressionDefinition<TResult, TValue>
buckets
int
output
ProjectionDefinition<TResult, TNewResult>
options
AggregateBucketAutoOptions
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TValue
TNewResult
Bucket<TValue>(AggregateExpressionDefinition<TResult, TValue>, IEnumerable<TValue>, AggregateBucketOptions<TValue>)
public virtual IAggregateFluent<AggregateBucketResult<TValue>> Bucket<TValue>(AggregateExpressionDefinition<TResult, TValue> groupBy, IEnumerable<TValue> boundaries, AggregateBucketOptions<TValue> options = null)
Parameters
groupBy
AggregateExpressionDefinition<TResult, TValue>
boundaries
IEnumerable<TValue>
options
AggregateBucketOptions<TValue>
Returns
- IAggregateFluent<AggregateBucketResult<TValue>>
Type Parameters
TValue
Bucket<TValue, TNewResult>(AggregateExpressionDefinition<TResult, TValue>, IEnumerable<TValue>, ProjectionDefinition<TResult, TNewResult>, AggregateBucketOptions<TValue>)
public virtual IAggregateFluent<TNewResult> Bucket<TValue, TNewResult>(AggregateExpressionDefinition<TResult, TValue> groupBy, IEnumerable<TValue> boundaries, ProjectionDefinition<TResult, TNewResult> output, AggregateBucketOptions<TValue> options = null)
Parameters
groupBy
AggregateExpressionDefinition<TResult, TValue>
boundaries
IEnumerable<TValue>
output
ProjectionDefinition<TResult, TNewResult>
options
AggregateBucketOptions<TValue>
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TValue
TNewResult
Count()
public virtual IAggregateFluent<AggregateCountResult> Count()
Returns
- IAggregateFluent<AggregateCountResult>
Facet<TNewResult>(IEnumerable<AggregateFacet<TResult>>, AggregateFacetOptions<TNewResult>)
public virtual IAggregateFluent<TNewResult> Facet<TNewResult>(IEnumerable<AggregateFacet<TResult>> facets, AggregateFacetOptions<TNewResult> options = null)
Parameters
facets
IEnumerable<AggregateFacet<TResult>>
options
AggregateFacetOptions<TNewResult>
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TNewResult
GraphLookup<TFrom, TConnectFrom, TConnectTo, TStartWith, TAsElement, TAs, TNewResult>(IMongoCollection<TFrom>, FieldDefinition<TFrom, TConnectFrom>, FieldDefinition<TFrom, TConnectTo>, AggregateExpressionDefinition<TResult, TStartWith>, FieldDefinition<TNewResult, TAs>, FieldDefinition<TAsElement, int>, AggregateGraphLookupOptions<TFrom, TAsElement, TNewResult>)
public virtual IAggregateFluent<TNewResult> GraphLookup<TFrom, TConnectFrom, TConnectTo, TStartWith, TAsElement, TAs, TNewResult>(IMongoCollection<TFrom> from, FieldDefinition<TFrom, TConnectFrom> connectFromField, FieldDefinition<TFrom, TConnectTo> connectToField, AggregateExpressionDefinition<TResult, TStartWith> startWith, FieldDefinition<TNewResult, TAs> @as, FieldDefinition<TAsElement, int> depthField, AggregateGraphLookupOptions<TFrom, TAsElement, TNewResult> options = null) where TAs : IEnumerable<TAsElement>
Parameters
from
IMongoCollection<TFrom>
connectFromField
FieldDefinition<TFrom, TConnectFrom>
connectToField
FieldDefinition<TFrom, TConnectTo>
startWith
AggregateExpressionDefinition<TResult, TStartWith>
as
FieldDefinition<TNewResult, TAs>
depthField
FieldDefinition<TAsElement, int>
options
AggregateGraphLookupOptions<TFrom, TAsElement, TNewResult>
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TFrom
TConnectFrom
TConnectTo
TStartWith
TAsElement
TAs
TNewResult
Group<TNewResult>(ProjectionDefinition<TResult, TNewResult>)
public abstract IAggregateFluent<TNewResult> Group<TNewResult>(ProjectionDefinition<TResult, TNewResult> group)
Parameters
group
ProjectionDefinition<TResult, TNewResult>
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TNewResult
Limit(int)
public abstract IAggregateFluent<TResult> Limit(int limit)
Parameters
limit
int
Returns
- IAggregateFluent<TResult>
Lookup<TForeignDocument, TNewResult>(string, FieldDefinition<TResult>, FieldDefinition<TForeignDocument>, FieldDefinition<TNewResult>, AggregateLookupOptions<TForeignDocument, TNewResult>)
public virtual IAggregateFluent<TNewResult> Lookup<TForeignDocument, TNewResult>(string foreignCollectionName, FieldDefinition<TResult> localField, FieldDefinition<TForeignDocument> foreignField, FieldDefinition<TNewResult> @as, AggregateLookupOptions<TForeignDocument, TNewResult> options)
Parameters
foreignCollectionName
string
localField
FieldDefinition<TResult>
foreignField
FieldDefinition<TForeignDocument>
as
FieldDefinition<TNewResult>
options
AggregateLookupOptions<TForeignDocument, TNewResult>
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TForeignDocument
TNewResult
Match(FilterDefinition<TResult>)
public abstract IAggregateFluent<TResult> Match(FilterDefinition<TResult> filter)
Parameters
filter
FilterDefinition<TResult>
Returns
- IAggregateFluent<TResult>
OfType<TNewResult>(IBsonSerializer<TNewResult>)
public abstract IAggregateFluent<TNewResult> OfType<TNewResult>(IBsonSerializer<TNewResult> newResultSerializer) where TNewResult : TResult
Parameters
newResultSerializer
IBsonSerializer<TNewResult>
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TNewResult
Out(string, CancellationToken)
public virtual IAsyncCursor<TResult> Out(string collectionName, CancellationToken cancellationToken)
Parameters
collectionName
string
cancellationToken
CancellationToken
Returns
- IAsyncCursor<TResult>
OutAsync(string, CancellationToken)
public abstract Task<IAsyncCursor<TResult>> OutAsync(string collectionName, CancellationToken cancellationToken)
Parameters
collectionName
string
cancellationToken
CancellationToken
Returns
- Task<IAsyncCursor<TResult>>
Project<TNewResult>(ProjectionDefinition<TResult, TNewResult>)
public abstract IAggregateFluent<TNewResult> Project<TNewResult>(ProjectionDefinition<TResult, TNewResult> projection)
Parameters
projection
ProjectionDefinition<TResult, TNewResult>
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TNewResult
ReplaceRoot<TNewResult>(AggregateExpressionDefinition<TResult, TNewResult>)
public virtual IAggregateFluent<TNewResult> ReplaceRoot<TNewResult>(AggregateExpressionDefinition<TResult, TNewResult> newRoot)
Parameters
newRoot
AggregateExpressionDefinition<TResult, TNewResult>
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TNewResult
Skip(int)
public abstract IAggregateFluent<TResult> Skip(int skip)
Parameters
skip
int
Returns
- IAggregateFluent<TResult>
Sort(SortDefinition<TResult>)
public abstract IAggregateFluent<TResult> Sort(SortDefinition<TResult> sort)
Parameters
sort
SortDefinition<TResult>
Returns
- IAggregateFluent<TResult>
SortByCount<TId>(AggregateExpressionDefinition<TResult, TId>)
public virtual IAggregateFluent<AggregateSortByCountResult<TId>> SortByCount<TId>(AggregateExpressionDefinition<TResult, TId> id)
Parameters
id
AggregateExpressionDefinition<TResult, TId>
Returns
- IAggregateFluent<AggregateSortByCountResult<TId>>
Type Parameters
TId
ThenBy(SortDefinition<TResult>)
public virtual IOrderedAggregateFluent<TResult> ThenBy(SortDefinition<TResult> newSort)
Parameters
newSort
SortDefinition<TResult>
Returns
- IOrderedAggregateFluent<TResult>
ToCursor(CancellationToken)
public virtual IAsyncCursor<TResult> ToCursor(CancellationToken cancellationToken)
Parameters
cancellationToken
CancellationToken
Returns
- IAsyncCursor<TResult>
ToCursorAsync(CancellationToken)
public abstract Task<IAsyncCursor<TResult>> ToCursorAsync(CancellationToken cancellationToken)
Parameters
cancellationToken
CancellationToken
Returns
- Task<IAsyncCursor<TResult>>
Unwind<TNewResult>(FieldDefinition<TResult>, IBsonSerializer<TNewResult>)
public abstract IAggregateFluent<TNewResult> Unwind<TNewResult>(FieldDefinition<TResult> field, IBsonSerializer<TNewResult> newResultSerializer)
Parameters
field
FieldDefinition<TResult>
newResultSerializer
IBsonSerializer<TNewResult>
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TNewResult
Unwind<TNewResult>(FieldDefinition<TResult>, AggregateUnwindOptions<TNewResult>)
public virtual IAggregateFluent<TNewResult> Unwind<TNewResult>(FieldDefinition<TResult> field, AggregateUnwindOptions<TNewResult> options)
Parameters
field
FieldDefinition<TResult>
options
AggregateUnwindOptions<TNewResult>
Returns
- IAggregateFluent<TNewResult>
Type Parameters
TNewResult