Click or drag to resize

NRules.Aggregators Namespace

Contains types that implement aggregation of facts as part of rules engine execution.
Classes
  ClassDescription
Public classAggregateExpressionExtensions
Extension methods used for working with collections of aggregate expressions.
Public classAggregationContext
Context associated with the aggregation operation.
Public classAggregationResult
Result of the aggregation.
Public classAggregatorRegistry
Registry of custom aggregator factories.
Interfaces
  InterfaceDescription
Public interfaceIAggregateExpression
Expression used by an aggregator, compiled to an executable form.
Public interfaceIAggregator
Base interface for fact aggregators. An aggregator is a stateful element of the rules engine, that receives matching facts of a particular kind, and can combine them into a synthetic fact, that is then used by the downstream logic in the rule. Aggregator also receives updates and removals for the matching facts, so that it can keep the corresponding aggregate facts in sync. An aggregator must be supplemented by a corresponding implementation of IAggregatorFactory that knows how to create new instances of the aggregator.
Public interfaceIAggregatorFactory
Base interface for aggregator factories. Aggregator factory constructs new instances of IAggregator of a given type, so that they can accumulate aggregation results. An IAggregatorFactory type must either be registered in AggregatorRegistry, or provided in the canonical rule model via CustomFactoryType. If both are provided, the aggregator factory at the AggregateElement level takes precedence.
Enumerations
  EnumerationDescription
Public enumerationAggregationAction
Action that aggregation performed on the aggregate, based on added/modified/removed facts.