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.