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

TableDbCommandBuilder<(Of <(<'TCommand, TParameter, TLimit, TObject>)>)>..::..ToMasterDetailObjectOrNull<(Of <(<'TDetail>)>)> Method

Materializes the result as a master object with detail records.

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

Syntax


public IMasterDetailMaterializer<Nullable<TObject>> ToMasterDetailObjectOrNull<TDetail>(
	string masterKeyColumn,
	Func<TObject, ICollection<TDetail>> map,
	RowOptions masterOptions,
	CollectionOptions detailOptions
)
Public Function ToMasterDetailObjectOrNull(Of TDetail) ( _
	masterKeyColumn As String, _
	map As Func(Of TObject, ICollection(Of TDetail)), _
	masterOptions As RowOptions, _
	detailOptions As CollectionOptions _
) As IMasterDetailMaterializer(Of Nullable(Of TObject))
public:
generic<typename TDetail>
IMasterDetailMaterializer<Nullable<TObject>>^ ToMasterDetailObjectOrNull(
	String^ masterKeyColumn, 
	Func<TObject, ICollection<TDetail>^>^ map, 
	RowOptions^ masterOptions, 
	CollectionOptions^ detailOptions
)

Type Parameters

TDetail
The type of the detail model.

Parameters

masterKeyColumn
Type: String
The column used as the primary key for the master records.
map
Type: Func<(Of <(<'TObject, ICollection<(Of <(<'TDetail>)>)>>)>)>
This is used to identify the detail collection property on the master object.
masterOptions
Type: Tortuga.Chain..::..RowOptions
Options for handling extraneous rows and constructor selection for the master object.
detailOptions
Type: Tortuga.Chain..::..CollectionOptions
Options for handling constructor selection for the detail objects

Return Value