Class PipelineDefinitionBuilder
- Namespace
- MongoDB.Driver
- Assembly
- MongoDB.Driver.dll
public static class PipelineDefinitionBuilder
- Inheritance
-
PipelineDefinitionBuilder
- Inherited Members
-
Methods
AppendStage<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, PipelineStageDefinition<TIntermediate, TOutput>, IBsonSerializer<TOutput>)
public static PipelineDefinition<TInput, TOutput> AppendStage<TInput, TIntermediate, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, PipelineStageDefinition<TIntermediate, TOutput> stage, IBsonSerializer<TOutput> outputSerializer = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
stage
PipelineStageDefinition<TIntermediate, TOutput>
outputSerializer
IBsonSerializer<TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TOutput
As<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, IBsonSerializer<TOutput>)
public static PipelineDefinition<TInput, TOutput> As<TInput, TIntermediate, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, IBsonSerializer<TOutput> outputSerializer = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
outputSerializer
IBsonSerializer<TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TOutput
BucketAuto<TInput, TIntermediate, TValue>(PipelineDefinition<TInput, TIntermediate>, AggregateExpressionDefinition<TIntermediate, TValue>, int, AggregateBucketAutoOptions)
public static PipelineDefinition<TInput, AggregateBucketAutoResult<TValue>> BucketAuto<TInput, TIntermediate, TValue>(this PipelineDefinition<TInput, TIntermediate> pipeline, AggregateExpressionDefinition<TIntermediate, TValue> groupBy, int buckets, AggregateBucketAutoOptions options = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
groupBy
AggregateExpressionDefinition<TIntermediate, TValue>
buckets
int
options
AggregateBucketAutoOptions
Returns
- PipelineDefinition<TInput, AggregateBucketAutoResult<TValue>>
Type Parameters
TInput
TIntermediate
TValue
BucketAuto<TInput, TIntermediate, TValue>(PipelineDefinition<TInput, TIntermediate>, Expression<Func<TIntermediate, TValue>>, int, AggregateBucketAutoOptions, ExpressionTranslationOptions)
public static PipelineDefinition<TInput, AggregateBucketAutoResult<TValue>> BucketAuto<TInput, TIntermediate, TValue>(this PipelineDefinition<TInput, TIntermediate> pipeline, Expression<Func<TIntermediate, TValue>> groupBy, int buckets, AggregateBucketAutoOptions options = null, ExpressionTranslationOptions translationOptions = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
groupBy
Expression<Func<TIntermediate, TValue>>
buckets
int
options
AggregateBucketAutoOptions
translationOptions
ExpressionTranslationOptions
Returns
- PipelineDefinition<TInput, AggregateBucketAutoResult<TValue>>
Type Parameters
TInput
TIntermediate
TValue
BucketAuto<TInput, TIntermediate, TValue, TOutput>(PipelineDefinition<TInput, TIntermediate>, AggregateExpressionDefinition<TIntermediate, TValue>, int, ProjectionDefinition<TIntermediate, TOutput>, AggregateBucketAutoOptions)
public static PipelineDefinition<TInput, TOutput> BucketAuto<TInput, TIntermediate, TValue, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, AggregateExpressionDefinition<TIntermediate, TValue> groupBy, int buckets, ProjectionDefinition<TIntermediate, TOutput> output, AggregateBucketAutoOptions options = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
groupBy
AggregateExpressionDefinition<TIntermediate, TValue>
buckets
int
output
ProjectionDefinition<TIntermediate, TOutput>
options
AggregateBucketAutoOptions
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TValue
TOutput
BucketAuto<TInput, TIntermediate, TValue, TOutput>(PipelineDefinition<TInput, TIntermediate>, Expression<Func<TIntermediate, TValue>>, int, Expression<Func<IGrouping<TValue, TIntermediate>, TOutput>>, AggregateBucketAutoOptions, ExpressionTranslationOptions)
public static PipelineDefinition<TInput, TOutput> BucketAuto<TInput, TIntermediate, TValue, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, Expression<Func<TIntermediate, TValue>> groupBy, int buckets, Expression<Func<IGrouping<TValue, TIntermediate>, TOutput>> output, AggregateBucketAutoOptions options = null, ExpressionTranslationOptions translationOptions = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
groupBy
Expression<Func<TIntermediate, TValue>>
buckets
int
output
Expression<Func<IGrouping<TValue, TIntermediate>, TOutput>>
options
AggregateBucketAutoOptions
translationOptions
ExpressionTranslationOptions
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TValue
TOutput
Bucket<TInput, TIntermediate, TValue>(PipelineDefinition<TInput, TIntermediate>, AggregateExpressionDefinition<TIntermediate, TValue>, IEnumerable<TValue>, AggregateBucketOptions<TValue>)
public static PipelineDefinition<TInput, AggregateBucketResult<TValue>> Bucket<TInput, TIntermediate, TValue>(this PipelineDefinition<TInput, TIntermediate> pipeline, AggregateExpressionDefinition<TIntermediate, TValue> groupBy, IEnumerable<TValue> boundaries, AggregateBucketOptions<TValue> options = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
groupBy
AggregateExpressionDefinition<TIntermediate, TValue>
boundaries
IEnumerable<TValue>
options
AggregateBucketOptions<TValue>
Returns
- PipelineDefinition<TInput, AggregateBucketResult<TValue>>
Type Parameters
TInput
TIntermediate
TValue
Bucket<TInput, TIntermediate, TValue>(PipelineDefinition<TInput, TIntermediate>, Expression<Func<TIntermediate, TValue>>, IEnumerable<TValue>, AggregateBucketOptions<TValue>, ExpressionTranslationOptions)
public static PipelineDefinition<TInput, AggregateBucketResult<TValue>> Bucket<TInput, TIntermediate, TValue>(this PipelineDefinition<TInput, TIntermediate> pipeline, Expression<Func<TIntermediate, TValue>> groupBy, IEnumerable<TValue> boundaries, AggregateBucketOptions<TValue> options = null, ExpressionTranslationOptions translationOptions = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
groupBy
Expression<Func<TIntermediate, TValue>>
boundaries
IEnumerable<TValue>
options
AggregateBucketOptions<TValue>
translationOptions
ExpressionTranslationOptions
Returns
- PipelineDefinition<TInput, AggregateBucketResult<TValue>>
Type Parameters
TInput
TIntermediate
TValue
Bucket<TInput, TIntermediate, TValue, TOutput>(PipelineDefinition<TInput, TIntermediate>, AggregateExpressionDefinition<TIntermediate, TValue>, IEnumerable<TValue>, ProjectionDefinition<TIntermediate, TOutput>, AggregateBucketOptions<TValue>)
public static PipelineDefinition<TInput, TOutput> Bucket<TInput, TIntermediate, TValue, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, AggregateExpressionDefinition<TIntermediate, TValue> groupBy, IEnumerable<TValue> boundaries, ProjectionDefinition<TIntermediate, TOutput> output, AggregateBucketOptions<TValue> options = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
groupBy
AggregateExpressionDefinition<TIntermediate, TValue>
boundaries
IEnumerable<TValue>
output
ProjectionDefinition<TIntermediate, TOutput>
options
AggregateBucketOptions<TValue>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TValue
TOutput
Bucket<TInput, TIntermediate, TValue, TOutput>(PipelineDefinition<TInput, TIntermediate>, Expression<Func<TIntermediate, TValue>>, IEnumerable<TValue>, Expression<Func<IGrouping<TValue, TIntermediate>, TOutput>>, AggregateBucketOptions<TValue>, ExpressionTranslationOptions)
public static PipelineDefinition<TInput, TOutput> Bucket<TInput, TIntermediate, TValue, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, Expression<Func<TIntermediate, TValue>> groupBy, IEnumerable<TValue> boundaries, Expression<Func<IGrouping<TValue, TIntermediate>, TOutput>> output, AggregateBucketOptions<TValue> options = null, ExpressionTranslationOptions translationOptions = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
groupBy
Expression<Func<TIntermediate, TValue>>
boundaries
IEnumerable<TValue>
output
Expression<Func<IGrouping<TValue, TIntermediate>, TOutput>>
options
AggregateBucketOptions<TValue>
translationOptions
ExpressionTranslationOptions
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TValue
TOutput
Count<TInput, TIntermediate>(PipelineDefinition<TInput, TIntermediate>)
public static PipelineDefinition<TInput, AggregateCountResult> Count<TInput, TIntermediate>(this PipelineDefinition<TInput, TIntermediate> pipeline)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
Returns
- PipelineDefinition<TInput, AggregateCountResult>
Type Parameters
TInput
TIntermediate
Facet<TInput, TIntermediate>(PipelineDefinition<TInput, TIntermediate>, params AggregateFacet<TIntermediate>[])
public static PipelineDefinition<TInput, AggregateFacetResults> Facet<TInput, TIntermediate>(this PipelineDefinition<TInput, TIntermediate> pipeline, params AggregateFacet<TIntermediate>[] facets)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
facets
AggregateFacet<TIntermediate>[]
Returns
- PipelineDefinition<TInput, AggregateFacetResults>
Type Parameters
TInput
TIntermediate
Facet<TInput, TIntermediate>(PipelineDefinition<TInput, TIntermediate>, IEnumerable<AggregateFacet<TIntermediate>>)
public static PipelineDefinition<TInput, AggregateFacetResults> Facet<TInput, TIntermediate>(this PipelineDefinition<TInput, TIntermediate> pipeline, IEnumerable<AggregateFacet<TIntermediate>> facets)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
facets
IEnumerable<AggregateFacet<TIntermediate>>
Returns
- PipelineDefinition<TInput, AggregateFacetResults>
Type Parameters
TInput
TIntermediate
Facet<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, params AggregateFacet<TIntermediate>[])
public static PipelineDefinition<TInput, TOutput> Facet<TInput, TIntermediate, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, params AggregateFacet<TIntermediate>[] facets)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
facets
AggregateFacet<TIntermediate>[]
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TOutput
Facet<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, IEnumerable<AggregateFacet<TIntermediate>>, AggregateFacetOptions<TOutput>)
public static PipelineDefinition<TInput, TOutput> Facet<TInput, TIntermediate, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, IEnumerable<AggregateFacet<TIntermediate>> facets, AggregateFacetOptions<TOutput> options = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
facets
IEnumerable<AggregateFacet<TIntermediate>>
options
AggregateFacetOptions<TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TOutput
For<TInput>(IBsonSerializer<TInput>)
public static PipelineDefinition<TInput, TInput> For<TInput>(IBsonSerializer<TInput> inputSerializer = null)
Parameters
inputSerializer
IBsonSerializer<TInput>
Returns
- PipelineDefinition<TInput, TInput>
Type Parameters
TInput
GraphLookup<TInput, TIntermediate, TFrom>(PipelineDefinition<TInput, TIntermediate>, IMongoCollection<TFrom>, FieldDefinition<TFrom, BsonValue>, FieldDefinition<TFrom, BsonValue>, AggregateExpressionDefinition<TIntermediate, BsonValue>, FieldDefinition<BsonDocument, IEnumerable<BsonDocument>>, FieldDefinition<BsonDocument, int>)
public static PipelineDefinition<TInput, BsonDocument> GraphLookup<TInput, TIntermediate, TFrom>(this PipelineDefinition<TInput, TIntermediate> pipeline, IMongoCollection<TFrom> from, FieldDefinition<TFrom, BsonValue> connectFromField, FieldDefinition<TFrom, BsonValue> connectToField, AggregateExpressionDefinition<TIntermediate, BsonValue> startWith, FieldDefinition<BsonDocument, IEnumerable<BsonDocument>> @as, FieldDefinition<BsonDocument, int> depthField = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
from
IMongoCollection<TFrom>
connectFromField
FieldDefinition<TFrom, BsonValue>
connectToField
FieldDefinition<TFrom, BsonValue>
startWith
AggregateExpressionDefinition<TIntermediate, BsonValue>
as
FieldDefinition<BsonDocument, IEnumerable<BsonDocument>>
depthField
FieldDefinition<BsonDocument, int>
Returns
- PipelineDefinition<TInput, BsonDocument>
Type Parameters
TInput
TIntermediate
TFrom
GraphLookup<TInput, TIntermediate, TFrom, TConnectFrom, TConnectTo, TStartWith, TAs, TOutput>(PipelineDefinition<TInput, TIntermediate>, IMongoCollection<TFrom>, FieldDefinition<TFrom, TConnectFrom>, FieldDefinition<TFrom, TConnectTo>, AggregateExpressionDefinition<TIntermediate, TStartWith>, FieldDefinition<TOutput, TAs>, AggregateGraphLookupOptions<TFrom, TFrom, TOutput>)
public static PipelineDefinition<TInput, TOutput> GraphLookup<TInput, TIntermediate, TFrom, TConnectFrom, TConnectTo, TStartWith, TAs, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, IMongoCollection<TFrom> from, FieldDefinition<TFrom, TConnectFrom> connectFromField, FieldDefinition<TFrom, TConnectTo> connectToField, AggregateExpressionDefinition<TIntermediate, TStartWith> startWith, FieldDefinition<TOutput, TAs> @as, AggregateGraphLookupOptions<TFrom, TFrom, TOutput> options = null) where TAs : IEnumerable<TFrom>
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
from
IMongoCollection<TFrom>
connectFromField
FieldDefinition<TFrom, TConnectFrom>
connectToField
FieldDefinition<TFrom, TConnectTo>
startWith
AggregateExpressionDefinition<TIntermediate, TStartWith>
as
FieldDefinition<TOutput, TAs>
options
AggregateGraphLookupOptions<TFrom, TFrom, TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TFrom
TConnectFrom
TConnectTo
TStartWith
TAs
TOutput
GraphLookup<TInput, TIntermediate, TFrom, TConnectFrom, TConnectTo, TStartWith, TAs, TOutput>(PipelineDefinition<TInput, TIntermediate>, IMongoCollection<TFrom>, Expression<Func<TFrom, TConnectFrom>>, Expression<Func<TFrom, TConnectTo>>, Expression<Func<TIntermediate, TStartWith>>, Expression<Func<TOutput, TAs>>, AggregateGraphLookupOptions<TFrom, TFrom, TOutput>, ExpressionTranslationOptions)
public static PipelineDefinition<TInput, TOutput> GraphLookup<TInput, TIntermediate, TFrom, TConnectFrom, TConnectTo, TStartWith, TAs, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, IMongoCollection<TFrom> from, Expression<Func<TFrom, TConnectFrom>> connectFromField, Expression<Func<TFrom, TConnectTo>> connectToField, Expression<Func<TIntermediate, TStartWith>> startWith, Expression<Func<TOutput, TAs>> @as, AggregateGraphLookupOptions<TFrom, TFrom, TOutput> options = null, ExpressionTranslationOptions translationOptions = null) where TAs : IEnumerable<TFrom>
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
from
IMongoCollection<TFrom>
connectFromField
Expression<Func<TFrom, TConnectFrom>>
connectToField
Expression<Func<TFrom, TConnectTo>>
startWith
Expression<Func<TIntermediate, TStartWith>>
as
Expression<Func<TOutput, TAs>>
options
AggregateGraphLookupOptions<TFrom, TFrom, TOutput>
translationOptions
ExpressionTranslationOptions
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TFrom
TConnectFrom
TConnectTo
TStartWith
TAs
TOutput
GraphLookup<TInput, TIntermediate, TFrom, TConnectFrom, TConnectTo, TStartWith, TAsElement, TAs, TOutput>(PipelineDefinition<TInput, TIntermediate>, IMongoCollection<TFrom>, FieldDefinition<TFrom, TConnectFrom>, FieldDefinition<TFrom, TConnectTo>, AggregateExpressionDefinition<TIntermediate, TStartWith>, FieldDefinition<TOutput, TAs>, FieldDefinition<TAsElement, int>, AggregateGraphLookupOptions<TFrom, TAsElement, TOutput>)
public static PipelineDefinition<TInput, TOutput> GraphLookup<TInput, TIntermediate, TFrom, TConnectFrom, TConnectTo, TStartWith, TAsElement, TAs, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, IMongoCollection<TFrom> from, FieldDefinition<TFrom, TConnectFrom> connectFromField, FieldDefinition<TFrom, TConnectTo> connectToField, AggregateExpressionDefinition<TIntermediate, TStartWith> startWith, FieldDefinition<TOutput, TAs> @as, FieldDefinition<TAsElement, int> depthField, AggregateGraphLookupOptions<TFrom, TAsElement, TOutput> options = null) where TAs : IEnumerable<TAsElement>
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
from
IMongoCollection<TFrom>
connectFromField
FieldDefinition<TFrom, TConnectFrom>
connectToField
FieldDefinition<TFrom, TConnectTo>
startWith
AggregateExpressionDefinition<TIntermediate, TStartWith>
as
FieldDefinition<TOutput, TAs>
depthField
FieldDefinition<TAsElement, int>
options
AggregateGraphLookupOptions<TFrom, TAsElement, TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TFrom
TConnectFrom
TConnectTo
TStartWith
TAsElement
TAs
TOutput
GraphLookup<TInput, TIntermediate, TFrom, TConnectFrom, TConnectTo, TStartWith, TAsElement, TAs, TOutput>(PipelineDefinition<TInput, TIntermediate>, IMongoCollection<TFrom>, Expression<Func<TFrom, TConnectFrom>>, Expression<Func<TFrom, TConnectTo>>, Expression<Func<TIntermediate, TStartWith>>, Expression<Func<TOutput, TAs>>, Expression<Func<TAsElement, int>>, AggregateGraphLookupOptions<TFrom, TAsElement, TOutput>, ExpressionTranslationOptions)
public static PipelineDefinition<TInput, TOutput> GraphLookup<TInput, TIntermediate, TFrom, TConnectFrom, TConnectTo, TStartWith, TAsElement, TAs, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, IMongoCollection<TFrom> from, Expression<Func<TFrom, TConnectFrom>> connectFromField, Expression<Func<TFrom, TConnectTo>> connectToField, Expression<Func<TIntermediate, TStartWith>> startWith, Expression<Func<TOutput, TAs>> @as, Expression<Func<TAsElement, int>> depthField, AggregateGraphLookupOptions<TFrom, TAsElement, TOutput> options = null, ExpressionTranslationOptions translationOptions = null) where TAs : IEnumerable<TAsElement>
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
from
IMongoCollection<TFrom>
connectFromField
Expression<Func<TFrom, TConnectFrom>>
connectToField
Expression<Func<TFrom, TConnectTo>>
startWith
Expression<Func<TIntermediate, TStartWith>>
as
Expression<Func<TOutput, TAs>>
depthField
Expression<Func<TAsElement, int>>
options
AggregateGraphLookupOptions<TFrom, TAsElement, TOutput>
translationOptions
ExpressionTranslationOptions
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TFrom
TConnectFrom
TConnectTo
TStartWith
TAsElement
TAs
TOutput
Group<TInput, TIntermediate>(PipelineDefinition<TInput, TIntermediate>, ProjectionDefinition<TIntermediate, BsonDocument>)
public static PipelineDefinition<TInput, BsonDocument> Group<TInput, TIntermediate>(this PipelineDefinition<TInput, TIntermediate> pipeline, ProjectionDefinition<TIntermediate, BsonDocument> group)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
group
ProjectionDefinition<TIntermediate, BsonDocument>
Returns
- PipelineDefinition<TInput, BsonDocument>
Type Parameters
TInput
TIntermediate
Group<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, ProjectionDefinition<TIntermediate, TOutput>)
public static PipelineDefinition<TInput, TOutput> Group<TInput, TIntermediate, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, ProjectionDefinition<TIntermediate, TOutput> group)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
group
ProjectionDefinition<TIntermediate, TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TOutput
Group<TInput, TIntermediate, TKey, TOutput>(PipelineDefinition<TInput, TIntermediate>, Expression<Func<TIntermediate, TKey>>, Expression<Func<IGrouping<TKey, TIntermediate>, TOutput>>, ExpressionTranslationOptions)
public static PipelineDefinition<TInput, TOutput> Group<TInput, TIntermediate, TKey, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, Expression<Func<TIntermediate, TKey>> id, Expression<Func<IGrouping<TKey, TIntermediate>, TOutput>> group, ExpressionTranslationOptions translationOptions = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
id
Expression<Func<TIntermediate, TKey>>
group
Expression<Func<IGrouping<TKey, TIntermediate>, TOutput>>
translationOptions
ExpressionTranslationOptions
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TKey
TOutput
Limit<TInput, TOutput>(PipelineDefinition<TInput, TOutput>, int)
public static PipelineDefinition<TInput, TOutput> Limit<TInput, TOutput>(this PipelineDefinition<TInput, TOutput> pipeline, int limit)
Parameters
pipeline
PipelineDefinition<TInput, TOutput>
limit
int
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TOutput
Lookup<TInput, TIntermediate, TForeignDocument, TOutput>(PipelineDefinition<TInput, TIntermediate>, IMongoCollection<TForeignDocument>, FieldDefinition<TIntermediate>, FieldDefinition<TForeignDocument>, FieldDefinition<TOutput>, AggregateLookupOptions<TForeignDocument, TOutput>)
public static PipelineDefinition<TInput, TOutput> Lookup<TInput, TIntermediate, TForeignDocument, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, IMongoCollection<TForeignDocument> foreignCollection, FieldDefinition<TIntermediate> localField, FieldDefinition<TForeignDocument> foreignField, FieldDefinition<TOutput> @as, AggregateLookupOptions<TForeignDocument, TOutput> options = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
foreignCollection
IMongoCollection<TForeignDocument>
localField
FieldDefinition<TIntermediate>
foreignField
FieldDefinition<TForeignDocument>
as
FieldDefinition<TOutput>
options
AggregateLookupOptions<TForeignDocument, TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TForeignDocument
TOutput
Lookup<TInput, TIntermediate, TForeignDocument, TOutput>(PipelineDefinition<TInput, TIntermediate>, IMongoCollection<TForeignDocument>, Expression<Func<TIntermediate, object>>, Expression<Func<TForeignDocument, object>>, Expression<Func<TOutput, object>>, AggregateLookupOptions<TForeignDocument, TOutput>)
public static PipelineDefinition<TInput, TOutput> Lookup<TInput, TIntermediate, TForeignDocument, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, IMongoCollection<TForeignDocument> foreignCollection, Expression<Func<TIntermediate, object>> localField, Expression<Func<TForeignDocument, object>> foreignField, Expression<Func<TOutput, object>> @as, AggregateLookupOptions<TForeignDocument, TOutput> options = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
foreignCollection
IMongoCollection<TForeignDocument>
localField
Expression<Func<TIntermediate, object>>
foreignField
Expression<Func<TForeignDocument, object>>
as
Expression<Func<TOutput, object>>
options
AggregateLookupOptions<TForeignDocument, TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TForeignDocument
TOutput
Match<TInput, TOutput>(PipelineDefinition<TInput, TOutput>, FilterDefinition<TOutput>)
public static PipelineDefinition<TInput, TOutput> Match<TInput, TOutput>(this PipelineDefinition<TInput, TOutput> pipeline, FilterDefinition<TOutput> filter)
Parameters
pipeline
PipelineDefinition<TInput, TOutput>
filter
FilterDefinition<TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TOutput
Match<TInput, TOutput>(PipelineDefinition<TInput, TOutput>, Expression<Func<TOutput, bool>>)
public static PipelineDefinition<TInput, TOutput> Match<TInput, TOutput>(this PipelineDefinition<TInput, TOutput> pipeline, Expression<Func<TOutput, bool>> filter)
Parameters
pipeline
PipelineDefinition<TInput, TOutput>
filter
Expression<Func<TOutput, bool>>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TOutput
OfType<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, IBsonSerializer<TOutput>)
public static PipelineDefinition<TInput, TOutput> OfType<TInput, TIntermediate, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, IBsonSerializer<TOutput> outputSerializer = null) where TOutput : TIntermediate
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
outputSerializer
IBsonSerializer<TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TOutput
Out<TInput, TOutput>(PipelineDefinition<TInput, TOutput>, IMongoCollection<TOutput>)
public static PipelineDefinition<TInput, TOutput> Out<TInput, TOutput>(this PipelineDefinition<TInput, TOutput> pipeline, IMongoCollection<TOutput> outputCollection)
Parameters
pipeline
PipelineDefinition<TInput, TOutput>
outputCollection
IMongoCollection<TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TOutput
Project<TInput, TIntermediate>(PipelineDefinition<TInput, TIntermediate>, ProjectionDefinition<TIntermediate, BsonDocument>)
public static PipelineDefinition<TInput, BsonDocument> Project<TInput, TIntermediate>(this PipelineDefinition<TInput, TIntermediate> pipeline, ProjectionDefinition<TIntermediate, BsonDocument> projection)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
projection
ProjectionDefinition<TIntermediate, BsonDocument>
Returns
- PipelineDefinition<TInput, BsonDocument>
Type Parameters
TInput
TIntermediate
Project<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, ProjectionDefinition<TIntermediate, TOutput>)
public static PipelineDefinition<TInput, TOutput> Project<TInput, TIntermediate, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, ProjectionDefinition<TIntermediate, TOutput> projection)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
projection
ProjectionDefinition<TIntermediate, TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TOutput
Project<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, Expression<Func<TIntermediate, TOutput>>, ExpressionTranslationOptions)
public static PipelineDefinition<TInput, TOutput> Project<TInput, TIntermediate, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, Expression<Func<TIntermediate, TOutput>> projection, ExpressionTranslationOptions translationOptions = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
projection
Expression<Func<TIntermediate, TOutput>>
translationOptions
ExpressionTranslationOptions
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TOutput
ReplaceRoot<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, AggregateExpressionDefinition<TIntermediate, TOutput>)
public static PipelineDefinition<TInput, TOutput> ReplaceRoot<TInput, TIntermediate, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, AggregateExpressionDefinition<TIntermediate, TOutput> newRoot)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
newRoot
AggregateExpressionDefinition<TIntermediate, TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TOutput
ReplaceRoot<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, Expression<Func<TIntermediate, TOutput>>, ExpressionTranslationOptions)
public static PipelineDefinition<TInput, TOutput> ReplaceRoot<TInput, TIntermediate, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, Expression<Func<TIntermediate, TOutput>> newRoot, ExpressionTranslationOptions translationOptions = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
newRoot
Expression<Func<TIntermediate, TOutput>>
translationOptions
ExpressionTranslationOptions
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TOutput
Skip<TInput, TOutput>(PipelineDefinition<TInput, TOutput>, int)
public static PipelineDefinition<TInput, TOutput> Skip<TInput, TOutput>(this PipelineDefinition<TInput, TOutput> pipeline, int skip)
Parameters
pipeline
PipelineDefinition<TInput, TOutput>
skip
int
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TOutput
SortByCount<TInput, TIntermediate, TValue>(PipelineDefinition<TInput, TIntermediate>, AggregateExpressionDefinition<TIntermediate, TValue>)
public static PipelineDefinition<TInput, AggregateSortByCountResult<TValue>> SortByCount<TInput, TIntermediate, TValue>(this PipelineDefinition<TInput, TIntermediate> pipeline, AggregateExpressionDefinition<TIntermediate, TValue> value)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
value
AggregateExpressionDefinition<TIntermediate, TValue>
Returns
- PipelineDefinition<TInput, AggregateSortByCountResult<TValue>>
Type Parameters
TInput
TIntermediate
TValue
SortByCount<TInput, TIntermediate, TValue>(PipelineDefinition<TInput, TIntermediate>, Expression<Func<TIntermediate, TValue>>, ExpressionTranslationOptions)
public static PipelineDefinition<TInput, AggregateSortByCountResult<TValue>> SortByCount<TInput, TIntermediate, TValue>(this PipelineDefinition<TInput, TIntermediate> pipeline, Expression<Func<TIntermediate, TValue>> value, ExpressionTranslationOptions translationOptions = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
value
Expression<Func<TIntermediate, TValue>>
translationOptions
ExpressionTranslationOptions
Returns
- PipelineDefinition<TInput, AggregateSortByCountResult<TValue>>
Type Parameters
TInput
TIntermediate
TValue
Sort<TInput, TOutput>(PipelineDefinition<TInput, TOutput>, SortDefinition<TOutput>)
public static PipelineDefinition<TInput, TOutput> Sort<TInput, TOutput>(this PipelineDefinition<TInput, TOutput> pipeline, SortDefinition<TOutput> sort)
Parameters
pipeline
PipelineDefinition<TInput, TOutput>
sort
SortDefinition<TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TOutput
Unwind<TInput, TIntermediate>(PipelineDefinition<TInput, TIntermediate>, FieldDefinition<TIntermediate>, AggregateUnwindOptions<BsonDocument>)
public static PipelineDefinition<TInput, BsonDocument> Unwind<TInput, TIntermediate>(this PipelineDefinition<TInput, TIntermediate> pipeline, FieldDefinition<TIntermediate> field, AggregateUnwindOptions<BsonDocument> options = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
field
FieldDefinition<TIntermediate>
options
AggregateUnwindOptions<BsonDocument>
Returns
- PipelineDefinition<TInput, BsonDocument>
Type Parameters
TInput
TIntermediate
Unwind<TInput, TIntermediate>(PipelineDefinition<TInput, TIntermediate>, Expression<Func<TIntermediate, object>>, AggregateUnwindOptions<BsonDocument>)
public static PipelineDefinition<TInput, BsonDocument> Unwind<TInput, TIntermediate>(this PipelineDefinition<TInput, TIntermediate> pipeline, Expression<Func<TIntermediate, object>> field, AggregateUnwindOptions<BsonDocument> options = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
field
Expression<Func<TIntermediate, object>>
options
AggregateUnwindOptions<BsonDocument>
Returns
- PipelineDefinition<TInput, BsonDocument>
Type Parameters
TInput
TIntermediate
Unwind<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, FieldDefinition<TIntermediate>, AggregateUnwindOptions<TOutput>)
public static PipelineDefinition<TInput, TOutput> Unwind<TInput, TIntermediate, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, FieldDefinition<TIntermediate> field, AggregateUnwindOptions<TOutput> options = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
field
FieldDefinition<TIntermediate>
options
AggregateUnwindOptions<TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TOutput
Unwind<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, Expression<Func<TIntermediate, object>>, AggregateUnwindOptions<TOutput>)
public static PipelineDefinition<TInput, TOutput> Unwind<TInput, TIntermediate, TOutput>(this PipelineDefinition<TInput, TIntermediate> pipeline, Expression<Func<TIntermediate, object>> field, AggregateUnwindOptions<TOutput> options = null)
Parameters
pipeline
PipelineDefinition<TInput, TIntermediate>
field
Expression<Func<TIntermediate, object>>
options
AggregateUnwindOptions<TOutput>
Returns
- PipelineDefinition<TInput, TOutput>
Type Parameters
TInput
TIntermediate
TOutput