Tortuga.Chain Namespace
Tortuga.Chain.CommandBuilders Namespace
Tortuga.Chain.Metadata Namespace

CommonAppenders..::..Join<(Of <(<'T1, T2>)>)> Method (ILink<(Of <(<'Tuple<(Of <(<'List<(Of <(<'T1>)>)>, List<(Of <(<'T2>)>)>>)>)>>)>)>, Func<(Of <(<'T1, T2, Boolean>)>)>, Func<(Of <(<'T1, ICollection<(Of <(<'T2>)>)>>)>)>, JoinOptions)

Joins a set of child objects to their parent objects.

Namespace:  Tortuga.Chain
Assembly:  Tortuga.Chain.Core (in Tortuga.Chain.Core.dll)

Syntax


public static ILink<List<T1>> Join<T1, T2>(
	this ILink<Tuple<List<T1>, List<T2>>> previousLink,
	Func<T1, T2, bool> joinExpression,
	Func<T1, ICollection<T2>> targetCollectionExpression,
	JoinOptions joinOptions
)
<ExtensionAttribute> _
Public Shared Function Join(Of T1, T2) ( _
	previousLink As ILink(Of Tuple(Of List(Of T1), List(Of T2))), _
	joinExpression As Func(Of T1, T2, Boolean), _
	targetCollectionExpression As Func(Of T1, ICollection(Of T2)), _
	joinOptions As JoinOptions _
) As ILink(Of List(Of T1))
[ExtensionAttribute]
public:
generic<typename T1, typename T2>
static ILink<List<T1>^>^ Join(
	ILink<Tuple<List<T1>^, List<T2>^>^>^ previousLink, 
	Func<T1, T2, bool^>^ joinExpression, 
	Func<T1, ICollection<T2>^>^ targetCollectionExpression, 
	JoinOptions^ joinOptions
)

Type Parameters

T1
The type of the parent object.
T2
The type of the child object.

Parameters

previousLink
Type: Tortuga.Chain..::..ILink<(Of <(<'Tuple<(Of <(<'List<(Of <(<'T1>)>)>, List<(Of <(<'T2>)>)>>)>)>>)>)>
The previous link.
joinExpression
Type: Func<(Of <(<'T1, T2, Boolean>)>)>
The expression used to test of a parent and child match.
targetCollectionExpression
Type: Func<(Of <(<'T1, ICollection<(Of <(<'T2>)>)>>)>)>
The expression to get the collection on the parent to add the child to.
joinOptions
Type: Tortuga.Chain..::..JoinOptions
The join options.