Table of Contents

Class JoinBuilder<TModel, TEvent, TParentBuilder>

Namespace
Cratis.Chronicle.Projections
Assembly
Cratis.Chronicle.dll

Represents an implementation of the IJoinBuilder<TModel, TEvent>.

public class JoinBuilder<TModel, TEvent, TParentBuilder> : ModelPropertiesBuilder<TModel, TEvent, IJoinBuilder<TModel, TEvent>, TParentBuilder>, IKeyBuilder<TEvent, IJoinBuilder<TModel, TEvent>>, IParentKeyBuilder<TEvent, IJoinBuilder<TModel, TEvent>>, IJoinBuilder<TModel, TEvent>, IModelPropertiesBuilder<TModel, TEvent, IJoinBuilder<TModel, TEvent>> where TParentBuilder : class

Type Parameters

TModel

Model to build for.

TEvent

Event to build for.

TParentBuilder

Type of parent builder.

Inheritance
KeyBuilder<TEvent, IJoinBuilder<TModel, TEvent>>
KeyAndParentKeyBuilder<TEvent, IJoinBuilder<TModel, TEvent>>
ModelPropertiesBuilder<TModel, TEvent, IJoinBuilder<TModel, TEvent>, TParentBuilder>
JoinBuilder<TModel, TEvent, TParentBuilder>
Implements
IKeyBuilder<TEvent, IJoinBuilder<TModel, TEvent>>
IParentKeyBuilder<TEvent, IJoinBuilder<TModel, TEvent>>
IJoinBuilder<TModel, TEvent>
IModelPropertiesBuilder<TModel, TEvent, IJoinBuilder<TModel, TEvent>>
Inherited Members

Constructors

JoinBuilder(IProjectionBuilder<TModel, TParentBuilder>)

Represents an implementation of the IJoinBuilder<TModel, TEvent>.

public JoinBuilder(IProjectionBuilder<TModel, TParentBuilder> projectionBuilder)

Parameters

projectionBuilder IProjectionBuilder<TModel, TParentBuilder>

The parent IProjectionBuilder<TModel, TBuilder>.

Methods

On<TProperty>(Expression<Func<TModel, TProperty>>)

Sets the property that defines the relationship from the models perspective.

public IJoinBuilder<TModel, TEvent> On<TProperty>(Expression<Func<TModel, TProperty>> keyAccessor)

Parameters

keyAccessor Expression<Func<TModel, TProperty>>

Accessor for the property to use.

Returns

IJoinBuilder<TModel, TEvent>

Builder continuation.

Type Parameters

TProperty

Type of the property.