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
- pipelinePipelineDefinition<TInput, TIntermediate>
- The pipeline. 
- fieldFieldDefinition<TIntermediate>
- The field. 
- optionsAggregateUnwindOptions<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
- pipelinePipelineDefinition<TInput, TIntermediate>
- The pipeline. 
- fieldFieldDefinition<TIntermediate>
- The field to unwind. 
- optionsAggregateUnwindOptions<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
- pipelinePipelineDefinition<TInput, TIntermediate>
- The pipeline. 
- fieldExpression<Func<TIntermediate, object>>
- The field to unwind. 
- optionsAggregateUnwindOptions<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
- pipelinePipelineDefinition<TInput, TIntermediate>
- The pipeline. 
- fieldExpression<Func<TIntermediate, object>>
- The field to unwind. 
- optionsAggregateUnwindOptions<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.