Skip to content

Class CqrsExecutionStrategy

Namespace: Cephalon.Behaviors.Patterns.Strategies
Assembly: Cephalon.Behaviors.Patterns.dll

Executes behaviors that follow the CQRS (Command Query Responsibility Segregation) pattern. Commands produce no output (returns HTTP 202), queries return a value (HTTP 200).

public sealed class CqrsExecutionStrategy : IBehaviorExecutionStrategy

objectCqrsExecutionStrategy

IBehaviorExecutionStrategy

object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object?, object?), object.ToString()

Gets the pattern identifier handled by this strategy.

public string Pattern { get; }

string

ExecuteAsync(BehaviorExecutionContext, CancellationToken)

Section titled “ ExecuteAsync(BehaviorExecutionContext, CancellationToken)”

Invokes the behavior slot and determines the HTTP status code based on whether output was produced. A null output is treated as a command (202 Accepted); a non-null output is treated as a query (200 OK).

public Task<BehaviorExecutionResult> ExecuteAsync(BehaviorExecutionContext context, CancellationToken ct = default)

context BehaviorExecutionContext

The execution context for this invocation.

ct CancellationToken

A token that cancels the execution.

Task<BehaviorExecutionResult>

A result with HTTP 200 for queries or HTTP 202 for commands.