PipelineDefinitionBuilderBucketTInput, TIntermediate, TValue, TOutput Method (PipelineDefinitionTInput, TIntermediate, ExpressionFuncTIntermediate, TValue, IEnumerableTValue, ExpressionFuncIGroupingTValue, TIntermediate, TOutput, AggregateBucketOptionsTValue, ExpressionTranslationOptions) |
Appends a $bucket stage to the pipeline.
Namespace:
MongoDB.Driver
Assembly:
MongoDB.Driver (in MongoDB.Driver.dll) Version: 2.21.0+5a9c3311e158910b88195f290e6d4b1b2715d2b2
Syntax 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
)
<ExtensionAttribute>
Public Shared Function Bucket(Of TInput, TIntermediate, TValue, TOutput) (
pipeline As PipelineDefinition(Of TInput, TIntermediate),
groupBy As Expression(Of Func(Of TIntermediate, TValue)),
boundaries As IEnumerable(Of TValue),
output As Expression(Of Func(Of IGrouping(Of TValue, TIntermediate), TOutput)),
Optional options As AggregateBucketOptions(Of TValue) = Nothing,
Optional translationOptions As ExpressionTranslationOptions = Nothing
) As PipelineDefinition(Of TInput, TOutput)
[<ExtensionAttribute>]
static member Bucket :
pipeline : PipelineDefinition<'TInput, 'TIntermediate> *
groupBy : Expression<Func<'TIntermediate, 'TValue>> *
boundaries : IEnumerable<'TValue> *
output : Expression<Func<IGrouping<'TValue, 'TIntermediate>, 'TOutput>> *
?options : AggregateBucketOptions<'TValue> *
?translationOptions : ExpressionTranslationOptions
(* Defaults:
let _options = defaultArg options null
let _translationOptions = defaultArg translationOptions null
*)
-> PipelineDefinition<'TInput, 'TOutput>
Parameters
- pipeline
- Type: MongoDB.DriverPipelineDefinitionTInput, TIntermediate
The pipeline. - groupBy
- Type: System.Linq.ExpressionsExpressionFuncTIntermediate, TValue
The group by expression. - boundaries
- Type: System.Collections.GenericIEnumerableTValue
The boundaries. - output
- Type: System.Linq.ExpressionsExpressionFuncIGroupingTValue, TIntermediate, TOutput
The output projection. - options (Optional)
- Type: MongoDB.DriverAggregateBucketOptionsTValue
The options. - translationOptions (Optional)
- Type: MongoDB.DriverExpressionTranslationOptions
The translation options.
Type Parameters
- TInput
- The type of the input documents.
- TIntermediate
- The type of the intermediate documents.
- TValue
- The type of the values.
- TOutput
- The type of the output documents.
Return Value
Type:
PipelineDefinitionTInput,
TOutput
The fluent aggregate interface.
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type
PipelineDefinitionTInput,
TIntermediate. When you use instance method syntax to call this method, omit the first parameter. For more information, see
Extension Methods (Visual Basic) or
Extension Methods (C# Programming Guide).
See Also