IAggregateFluentExtensionsLookupTResult, TForeignDocument, TAsElement, TAs, TNewResult Method (IAggregateFluentTResult, IMongoCollectionTForeignDocument, BsonDocument, PipelineDefinitionTForeignDocument, TAsElement, ExpressionFuncTNewResult, TAs, AggregateLookupOptionsTForeignDocument, TNewResult) (original) (raw)

Appends a lookup stage to the pipeline.

Namespace: MongoDB.Driver
Assembly: MongoDB.Driver (in MongoDB.Driver.dll) Version: 2.10.0+569905ff5e778c38ea19d9d0392496a83e1704ed

Syntax

public static IAggregateFluent Lookup<TResult, TForeignDocument, TAsElement, TAs, TNewResult>( this IAggregateFluent aggregate, IMongoCollection foreignCollection, BsonDocument let, PipelineDefinition<TForeignDocument, TAsElement> lookupPipeline, Expression<Func<TNewResult, TAs>> as, AggregateLookupOptions<TForeignDocument, TNewResult> options = null ) where TAs : Object, IEnumerable

Public Shared Function Lookup(Of TResult, TForeignDocument, TAsElement, TAs As {Object, IEnumerable(Of TAsElement)}, TNewResult) ( aggregate As IAggregateFluent(Of TResult), foreignCollection As IMongoCollection(Of TForeignDocument), let As BsonDocument, lookupPipeline As PipelineDefinition(Of TForeignDocument, TAsElement), as As Expression(Of Func(Of TNewResult, TAs)), Optional options As AggregateLookupOptions(Of TForeignDocument, TNewResult) = Nothing ) As IAggregateFluent(Of TNewResult)

[] static member Lookup : aggregate : IAggregateFluent<'TResult> * foreignCollection : IMongoCollection<'TForeignDocument> * let : BsonDocument * lookupPipeline : PipelineDefinition<'TForeignDocument, 'TAsElement> * as : Expression<Func<'TNewResult, 'TAs>> * ?options : AggregateLookupOptions<'TForeignDocument, 'TNewResult> (* Defaults: let _options = defaultArg options null *) -> IAggregateFluent<'TNewResult> when 'TAs : Object and IEnumerable<'TAsElement>

Parameters

aggregate

Type: MongoDB.DriverIAggregateFluentTResult
The aggregate.

foreignCollection

Type: MongoDB.DriverIMongoCollectionTForeignDocument
The foreign collection.

let

Type: MongoDB.BsonBsonDocument
The "let" definition.

lookupPipeline

Type: MongoDB.DriverPipelineDefinitionTForeignDocument, TAsElement
The lookup pipeline.

as

Type: System.Linq.ExpressionsExpressionFuncTNewResult, TAs
The as field in TNewResult in which to place the results of the lookup pipeline.

options (Optional)

Type: MongoDB.DriverAggregateLookupOptionsTForeignDocument, TNewResult
The options.

Type Parameters

TResult

The type of the result.

TForeignDocument

The type of the foreign collection documents.

TAsElement

The type of the as field elements.

TAs

The type of the as field.

TNewResult

The type of the new result.

Return Value

Type: IAggregateFluentTNewResult
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 IAggregateFluentTResult. 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

Reference