// methods
 public override IAggregateFluent <TNewResult> AppendStage <TNewResult>(PipelineStageDefinition <TResult, TNewResult> stage)
 {
     return(new AggregateFluent <TDocument, TNewResult>(
                _collection,
                _stages.Concat(new[] { stage }),
                _options));
 }
 /// <summary>
 /// Deconstructs this class into its components.
 /// </summary>
 /// <param name="groupStage">The group stage.</param>
 /// <param name="projectStage">The project stage.</param>
 public void Deconstruct(
     out PipelineStageDefinition <TInput, IGrouping <TValue, TInput> > groupStage,
     out PipelineStageDefinition <IGrouping <TValue, TInput>, TOutput> projectStage)
 {
     groupStage   = GroupStage;
     projectStage = ProjectStage;
 }
 // methods
 public override IAggregateFluent <TNewResult> AppendStage <TNewResult>(PipelineStageDefinition <TResult, TNewResult> stage)
 {
     return(WithPipeline(_pipeline.AppendStage(stage)));
 }
Example #4
0
 /// <inheritdoc />
 public abstract IAggregateFluent <TNewResult> AppendStage <TNewResult>(PipelineStageDefinition <TResult, TNewResult> stage);
 internal GroupForLinq3Result(PipelineStageDefinition <TInput, IGrouping <TValue, TInput> > groupStage, PipelineStageDefinition <IGrouping <TValue, TInput>, TOutput> projectStage)
 {
     GroupStage   = groupStage;
     ProjectStage = projectStage;
 }