IAggregateFluentExtensions.Lookup<TResult, TForeignDocument, TAsElement, TAs, TNewResult> Method (IAggregateFluent<TResult>, IMongoCollection<TForeignDocument>, BsonDocument, PipelineDefinition<TForeignDocument, TAsElement>, Expression<Func<TNewResult, TAs>>, AggregateLookupOptions<TForeignDocument, TNewResult>) |
Appends a lookup stage to the pipeline.
Namespace:
MongoDB.Driver
Assembly:
MongoDB.Driver (in MongoDB.Driver.dll) Version: 2.20.0+ee01960089f28ea1b501690df5fc9f6318a70242
Syntaxpublic static IAggregateFluent<TNewResult> Lookup<TResult, TForeignDocument, TAsElement, TAs, TNewResult>(
this IAggregateFluent<TResult> aggregate,
IMongoCollection<TForeignDocument> foreignCollection,
BsonDocument let,
PipelineDefinition<TForeignDocument, TAsElement> lookupPipeline,
Expression<Func<TNewResult, TAs>> as,
AggregateLookupOptions<TForeignDocument, TNewResult> options = null
)
where TAs : Object, IEnumerable<TAsElement>
<ExtensionAttribute>
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)
[<ExtensionAttribute>]
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.Driver.IAggregateFluent<TResult>
The aggregate. - 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: System.Linq.Expressions.Expression<Func<TNewResult, TAs>>
The as field in TNewResult in which to place the results of the lookup pipeline. - options (Optional)
- Type: MongoDB.Driver.AggregateLookupOptions<TForeignDocument, 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:
IAggregateFluent<TNewResult>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
IAggregateFluent<TResult>. 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