Method Unwind
Unwind<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, FieldDefinition<TIntermediate>, AggregateUnwindOptions<TOutput>)
Appends an $unwind stage to the pipeline.
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>The pipeline.
field
FieldDefinition <TIntermediate>The field.
options
AggregateUnwind <TOutput>Options The options.
Returns
- Pipeline
Definition <TInput, TOutput> A new pipeline with an additional stage.
Type Parameters
TInput
The type of the input documents.
TIntermediate
The type of the intermediate documents.
TOutput
The type of the output documents.
Unwind<TInput, TIntermediate>(PipelineDefinition<TInput, TIntermediate>, FieldDefinition<TIntermediate>, AggregateUnwindOptions<BsonDocument>)
Appends an unwind stage to the pipeline.
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>The pipeline.
field
FieldDefinition <TIntermediate>The field to unwind.
options
AggregateUnwind <BsonOptions Document >The options.
Returns
- Pipeline
Definition <TInput, BsonDocument > A new pipeline with an additional stage.
Type Parameters
TInput
The type of the input documents.
TIntermediate
The type of the intermediate documents.
Unwind<TInput, TIntermediate>(PipelineDefinition<TInput, TIntermediate>, Expression<Func<TIntermediate, object>>, AggregateUnwindOptions<BsonDocument>)
Appends an unwind stage to the pipeline.
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>The pipeline.
field
Expression<Func<TIntermediate, object>>The field to unwind.
options
AggregateUnwind <BsonOptions Document >The options.
Returns
- Pipeline
Definition <TInput, BsonDocument > A new pipeline with an additional stage.
Type Parameters
TInput
The type of the input documents.
TIntermediate
The type of the intermediate documents.
Unwind<TInput, TIntermediate, TOutput>(PipelineDefinition<TInput, TIntermediate>, Expression<Func<TIntermediate, object>>, AggregateUnwindOptions<TOutput>)
Appends an unwind stage to the pipeline.
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>The pipeline.
field
Expression<Func<TIntermediate, object>>The field to unwind.
options
AggregateUnwind <TOutput>Options The options.
Returns
- Pipeline
Definition <TInput, TOutput> A new pipeline with an additional stage.
Type Parameters
TInput
The type of the input documents.
TIntermediate
The type of the intermediate documents.
TOutput
The type of the output documents.