PipelineDefinitionBuilder.GraphLookup<TInput, TIntermediate, TFrom> Method (PipelineDefinition<TInput, TIntermediate>, IMongoCollection<TFrom>, FieldDefinition<TFrom, BsonValue>, FieldDefinition<TFrom, BsonValue>, AggregateExpressionDefinition<TIntermediate, BsonValue>, FieldDefinition<BsonDocument, IEnumerable<BsonDocument>>, FieldDefinition<BsonDocument, Int32>) |
Appends a $graphLookup stage to the pipeline.
Namespace:
MongoDB.Driver
Assembly:
MongoDB.Driver (in MongoDB.Driver.dll) Version: 2.21.0+5a9c3311e158910b88195f290e6d4b1b2715d2b2
Syntaxpublic static PipelineDefinition<TInput, BsonDocument> GraphLookup<TInput, TIntermediate, TFrom>(
this PipelineDefinition<TInput, TIntermediate> pipeline,
IMongoCollection<TFrom> from,
FieldDefinition<TFrom, BsonValue> connectFromField,
FieldDefinition<TFrom, BsonValue> connectToField,
AggregateExpressionDefinition<TIntermediate, BsonValue> startWith,
FieldDefinition<BsonDocument, IEnumerable<BsonDocument>> as,
FieldDefinition<BsonDocument, int> depthField = null
)
<ExtensionAttribute>
Public Shared Function GraphLookup(Of TInput, TIntermediate, TFrom) (
pipeline As PipelineDefinition(Of TInput, TIntermediate),
from As IMongoCollection(Of TFrom),
connectFromField As FieldDefinition(Of TFrom, BsonValue),
connectToField As FieldDefinition(Of TFrom, BsonValue),
startWith As AggregateExpressionDefinition(Of TIntermediate, BsonValue),
as As FieldDefinition(Of BsonDocument, IEnumerable(Of BsonDocument)),
Optional depthField As FieldDefinition(Of BsonDocument, Integer) = Nothing
) As PipelineDefinition(Of TInput, BsonDocument)
[<ExtensionAttribute>]
static member GraphLookup :
pipeline : PipelineDefinition<'TInput, 'TIntermediate> *
from : IMongoCollection<'TFrom> *
connectFromField : FieldDefinition<'TFrom, BsonValue> *
connectToField : FieldDefinition<'TFrom, BsonValue> *
startWith : AggregateExpressionDefinition<'TIntermediate, BsonValue> *
as : FieldDefinition<BsonDocument, IEnumerable<BsonDocument>> *
?depthField : FieldDefinition<BsonDocument, int>
(* Defaults:
let _depthField = defaultArg depthField null
*)
-> PipelineDefinition<'TInput, BsonDocument>
Parameters
- pipeline
- Type: MongoDB.Driver.PipelineDefinition<TInput, TIntermediate>
The pipeline. - from
- Type: MongoDB.Driver.IMongoCollection<TFrom>
The from collection. - connectFromField
- Type: MongoDB.Driver.FieldDefinition<TFrom, BsonValue>
The connect from field. - connectToField
- Type: MongoDB.Driver.FieldDefinition<TFrom, BsonValue>
The connect to field. - startWith
- Type: MongoDB.Driver.AggregateExpressionDefinition<TIntermediate, BsonValue>
The start with value. - as
- Type: MongoDB.Driver.FieldDefinition<BsonDocument, IEnumerable<BsonDocument>>
The as field. - depthField (Optional)
- Type: MongoDB.Driver.FieldDefinition<BsonDocument, Int32>
The depth field.
Type Parameters
- TInput
- The type of the input documents.
- TIntermediate
- The type of the intermediate documents.
- TFrom
- The type of the from documents.
Return Value
Type:
PipelineDefinition<TInput,
BsonDocument>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
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