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
AggregateUnwindOptions<TOutput>The options.
Returns
- PipelineDefinition<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
AggregateUnwindOptions<BsonDocument>The options.
Returns
- PipelineDefinition<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
AggregateUnwindOptions<BsonDocument>The options.
Returns
- PipelineDefinition<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
AggregateUnwindOptions<TOutput>The options.
Returns
- PipelineDefinition<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.