AggregateFluentBaseTResultGraphLookupTFrom, TConnectFrom, TConnectTo, TStartWith, TAsElement, TAs, TNewResult Method |
Appends a $graphLookup stage to the pipeline.
Namespace: MongoDB.DriverAssembly: MongoDB.Driver (in MongoDB.Driver.dll) Version: 2.4.1
Syntax public virtual IAggregateFluent<TNewResult> GraphLookup<TFrom, TConnectFrom, TConnectTo, TStartWith, TAsElement, TAs, TNewResult>(
IMongoCollection<TFrom> from,
FieldDefinition<TFrom, TConnectFrom> connectFromField,
FieldDefinition<TFrom, TConnectTo> connectToField,
AggregateExpressionDefinition<TResult, TStartWith> startWith,
FieldDefinition<TNewResult, TAs> as,
FieldDefinition<TAsElement, int> depthField,
AggregateGraphLookupOptions<TFrom, TAsElement, TNewResult> options = null
)
where TAs : Object, IEnumerable<TAsElement>
Public Overridable Function GraphLookup(Of TFrom, TConnectFrom, TConnectTo, TStartWith, TAsElement, TAs As {Object, IEnumerable(Of TAsElement)}, TNewResult) (
from As IMongoCollection(Of TFrom),
connectFromField As FieldDefinition(Of TFrom, TConnectFrom),
connectToField As FieldDefinition(Of TFrom, TConnectTo),
startWith As AggregateExpressionDefinition(Of TResult, TStartWith),
as As FieldDefinition(Of TNewResult, TAs),
depthField As FieldDefinition(Of TAsElement, Integer),
Optional options As AggregateGraphLookupOptions(Of TFrom, TAsElement, TNewResult) = Nothing
) As IAggregateFluent(Of TNewResult)
abstract GraphLookup :
from : IMongoCollection<'TFrom> *
connectFromField : FieldDefinition<'TFrom, 'TConnectFrom> *
connectToField : FieldDefinition<'TFrom, 'TConnectTo> *
startWith : AggregateExpressionDefinition<'TResult, 'TStartWith> *
as : FieldDefinition<'TNewResult, 'TAs> *
depthField : FieldDefinition<'TAsElement, int> *
?options : AggregateGraphLookupOptions<'TFrom, 'TAsElement, 'TNewResult>
(* Defaults:
let _options = defaultArg options null
*)
-> IAggregateFluent<'TNewResult> when 'TAs : Object and IEnumerable<'TAsElement>
override GraphLookup :
from : IMongoCollection<'TFrom> *
connectFromField : FieldDefinition<'TFrom, 'TConnectFrom> *
connectToField : FieldDefinition<'TFrom, 'TConnectTo> *
startWith : AggregateExpressionDefinition<'TResult, 'TStartWith> *
as : FieldDefinition<'TNewResult, 'TAs> *
depthField : FieldDefinition<'TAsElement, int> *
?options : AggregateGraphLookupOptions<'TFrom, 'TAsElement, 'TNewResult>
(* Defaults:
let _options = defaultArg options null
*)
-> IAggregateFluent<'TNewResult> when 'TAs : Object and IEnumerable<'TAsElement>
Parameters
- from
- Type: MongoDB.DriverIMongoCollectionTFrom
The from collection. - connectFromField
- Type: MongoDB.DriverFieldDefinitionTFrom, TConnectFrom
The connect from field. - connectToField
- Type: MongoDB.DriverFieldDefinitionTFrom, TConnectTo
The connect to field. - startWith
- Type: MongoDB.DriverAggregateExpressionDefinitionTResult, TStartWith
The start with value. - as
- Type: MongoDB.DriverFieldDefinitionTNewResult, TAs
The as field. - depthField
- Type: MongoDB.DriverFieldDefinitionTAsElement, Int32
The depth field. - options (Optional)
- Type: MongoDB.DriverAggregateGraphLookupOptionsTFrom, TAsElement, TNewResult
The options.
Type Parameters
- TFrom
- The type of the from documents.
- TConnectFrom
- The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}).
- TConnectTo
- The type of the connect to field.
- TStartWith
- The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}).
- TAsElement
- The type of the as field elements.
- TAs
- The type of the as field.
- TNewResult
- The type of the new result (must be same as TResult with an additional as field).
Return Value
Type:
IAggregateFluentTNewResultThe fluent aggregate interface.
Implements
IAggregateFluentTResultGraphLookupTFrom, TConnectFrom, TConnectTo, TStartWith, TAsElement, TAs, TNewResult(IMongoCollectionTFrom, FieldDefinitionTFrom, TConnectFrom, FieldDefinitionTFrom, TConnectTo, AggregateExpressionDefinitionTResult, TStartWith, FieldDefinitionTNewResult, TAs, FieldDefinitionTAsElement, Int32, AggregateGraphLookupOptionsTFrom, TAsElement, TNewResult)See Also