| PipelineDefinitionBuilderBucketAutoTInput, TIntermediate, TValue, TOutput Method (PipelineDefinitionTInput, TIntermediate, ExpressionFuncTIntermediate, TValue, Int32, ExpressionFuncIGroupingTValue, TIntermediate, TOutput, AggregateBucketAutoOptions, ExpressionTranslationOptions) | 
 
            Appends a $bucketAuto stage to the pipeline.
            
 
    Namespace: 
   MongoDB.Driver
    Assembly:
   MongoDB.Driver (in MongoDB.Driver.dll) Version: 2.12.2+a4a3888f4fb51bb518b1eb5002effc2d47f2ea6a
 Syntax
Syntaxpublic static PipelineDefinition<TInput, TOutput> BucketAuto<TInput, TIntermediate, TValue, TOutput>(
	this PipelineDefinition<TInput, TIntermediate> pipeline,
	Expression<Func<TIntermediate, TValue>> groupBy,
	int buckets,
	Expression<Func<IGrouping<TValue, TIntermediate>, TOutput>> output,
	AggregateBucketAutoOptions options = null,
	ExpressionTranslationOptions translationOptions = null
)
<ExtensionAttribute>
Public Shared Function BucketAuto(Of TInput, TIntermediate, TValue, TOutput) ( 
	pipeline As PipelineDefinition(Of TInput, TIntermediate),
	groupBy As Expression(Of Func(Of TIntermediate, TValue)),
	buckets As Integer,
	output As Expression(Of Func(Of IGrouping(Of TValue, TIntermediate), TOutput)),
	Optional options As AggregateBucketAutoOptions = Nothing,
	Optional translationOptions As ExpressionTranslationOptions = Nothing
) As PipelineDefinition(Of TInput, TOutput)
[<ExtensionAttribute>]
static member BucketAuto : 
        pipeline : PipelineDefinition<'TInput, 'TIntermediate> * 
        groupBy : Expression<Func<'TIntermediate, 'TValue>> * 
        buckets : int * 
        output : Expression<Func<IGrouping<'TValue, 'TIntermediate>, 'TOutput>> * 
        ?options : AggregateBucketAutoOptions * 
        ?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.
- buckets
- Type: SystemInt32
 The number of buckets.
- output
- Type: System.Linq.ExpressionsExpressionFuncIGroupingTValue, TIntermediate, TOutput
 The output projection.
- options (Optional)
- Type: MongoDB.DriverAggregateBucketAutoOptions
 The options (optional).
- 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 value.
- 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
See Also