PipelineDefinitionBuilder.Lookup<TInput, TIntermediate, TForeignDocument, TAsElement, TAs, TOutput> Method (PipelineDefinition<TInput, TIntermediate>, IMongoCollection<TForeignDocument>, BsonDocument, PipelineDefinition<TForeignDocument, TAsElement>, FieldDefinition<TOutput, TAs>, AggregateLookupOptions<TForeignDocument, TOutput>) |
Appends a $lookup stage to the pipeline.
Namespace:
MongoDB.Driver
Assembly:
MongoDB.Driver (in MongoDB.Driver.dll) Version: 2.9.0+32b058abcdf2c7e8d9dd3a676d207b31897eee2e
Syntaxpublic static PipelineDefinition<TInput, TOutput> Lookup<TInput, TIntermediate, TForeignDocument, TAsElement, TAs, TOutput>(
this PipelineDefinition<TInput, TIntermediate> pipeline,
IMongoCollection<TForeignDocument> foreignCollection,
BsonDocument let,
PipelineDefinition<TForeignDocument, TAsElement> lookupPipeline,
FieldDefinition<TOutput, TAs> as,
AggregateLookupOptions<TForeignDocument, TOutput> options = null
)
where TAs : Object, IEnumerable<TAsElement>
<ExtensionAttribute>
Public Shared Function Lookup(Of TInput, TIntermediate, TForeignDocument, TAsElement, TAs As {Object, IEnumerable(Of TAsElement)}, TOutput) (
pipeline As PipelineDefinition(Of TInput, TIntermediate),
foreignCollection As IMongoCollection(Of TForeignDocument),
let As BsonDocument,
lookupPipeline As PipelineDefinition(Of TForeignDocument, TAsElement),
as As FieldDefinition(Of TOutput, TAs),
Optional options As AggregateLookupOptions(Of TForeignDocument, TOutput) = Nothing
) As PipelineDefinition(Of TInput, TOutput)
[<ExtensionAttribute>]
static member Lookup :
pipeline : PipelineDefinition<'TInput, 'TIntermediate> *
foreignCollection : IMongoCollection<'TForeignDocument> *
let : BsonDocument *
lookupPipeline : PipelineDefinition<'TForeignDocument, 'TAsElement> *
as : FieldDefinition<'TOutput, 'TAs> *
?options : AggregateLookupOptions<'TForeignDocument, 'TOutput>
(* Defaults:
let _options = defaultArg options null
*)
-> PipelineDefinition<'TInput, 'TOutput> when 'TAs : Object and IEnumerable<'TAsElement>
Parameters
- pipeline
- Type: MongoDB.Driver.PipelineDefinition<TInput, TIntermediate>
The pipeline. - foreignCollection
- Type: MongoDB.Driver.IMongoCollection<TForeignDocument>
The foreign collection. - let
- Type: MongoDB.Bson.BsonDocument
The "let" definition. - lookupPipeline
- Type: MongoDB.Driver.PipelineDefinition<TForeignDocument, TAsElement>
The lookup pipeline. - as
- Type: MongoDB.Driver.FieldDefinition<TOutput, TAs>
The as field in TOutput in which to place the results of the lookup pipeline. - options (Optional)
- Type: MongoDB.Driver.AggregateLookupOptions<TForeignDocument, TOutput>
The options.
Type Parameters
- TInput
- The type of the input documents.
- TIntermediate
- The type of the intermediate documents.
- TForeignDocument
- The type of the foreign collection documents.
- TAsElement
- The type of the as field elements.
- TAs
- The type of the as field.
- TOutput
- The type of the output documents.
Return Value
Type:
PipelineDefinition<TInput,
TOutput>The stage.
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type
PipelineDefinition<TInput,
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