Exemple #1
0
        public static TAggregate Build <TAggregate>(AggragateId id, int loadedRevision, bool isReadOnly, IEnumerable <object> events) where TAggregate : AggregateState, new()
        {
            var state = new TAggregate
            {
                Id             = id,
                LoadedRevision = loadedRevision,
                IsReadOnly     = isReadOnly
            };

            state._uncomittedEvents = state.IsReadOnly ? null : new List <Event>();
            foreach (var @event in events)
            {
                state.When(@event);
            }
            return(state);
        }
Exemple #2
0
 protected Event(AggragateId aggregateId)
 {
     AggregateId = aggregateId;
 }