FcqrsBuilderExtensionsType
PackageFCQRS
Single-type-argument forms of AddAggregate / AddSaga. The concrete class
already names its state/command/event types on its Aggregate<,,> / Saga<,,>
base, so registration repeats none of them:
.AddAggregate<DocumentShard>()
.AddSaga(create: sp => new PublicationSaga(...), startOn: e => ...) // TSaga inferred
Reflection runs once per registration, while the host is being composed —
nothing on the message path. The four-type-argument instance overloads remain
for classes that acquire the base generically.
Specification
Kind
Type
Members
2
Examples
0
AddAggregateSignature
FcqrsBuilderExtensions.AddAggregate(builder)
AddSagaSignature
FcqrsBuilderExtensions.AddSaga(builder, create, startOn)
Summary
| Name | Signature | Synopsis |
|---|---|---|
| AddAggregate | FcqrsBuilderExtensions.AddAggregate(builder) | Register an aggregate naming only its class; TState/TCommand/TEvent are read off its Aggregate<TState, TCommand, TEvent> base. |
| AddSaga | FcqrsBuilderExtensions.AddSaga(builder, create, startOn) | Register a saga naming only its class (usually inferred from `create`); TEvent/TSagaData/TState are read off its Saga<TEvent, TSagaData, TState> base. |
Register an aggregate naming only its class; TState/TCommand/TEvent are
read off its Aggregate<TState, TCommand, TEvent> base.
Parameters
| Name | Type | Description |
|---|---|---|
| builder | FcqrsBuilder |
Returns
FcqrsBuilder
Register a saga naming only its class (usually inferred from `create`);
TEvent/TSagaData/TState are read off its Saga<TEvent, TSagaData, TState> base.
Parameters
| Name | Type | Description |
|---|---|---|
| builder | FcqrsBuilder | |
| create | Func<IServiceProvider, 'TSaga> | |
| startOn | Func<obj, bool> |
Returns
FcqrsBuilder