public IEnumerable <IEvent <TEventId, TAggregateId> > GetEventsByAggregateId(TAggregateId id) { var events = DbContext.Events .Where(@event => @event.AggregateId.Equals(id)) .Select(@event => EventureSerializer.Deserialize <IEvent <TEventId, TAggregateId> >(@event.Data)); return(events); }
public EventData Create(IEvent <Guid, Guid> @event) { var createdEvent = new EventData { AggregateId = @event.AggregateId, EventType = @event.GetType().FullName, Id = @event.Id, Timestamp = DateTime.Now, Version = @event.Version, Data = EventureSerializer.Serialize(@event) }; return(createdEvent); }
public IEnumerable <IEvent <TEventId, TAggregateId> > GetAllEvents() { return(DbContext.Events .Select(@event => EventureSerializer.Deserialize <IEvent <TEventId, TAggregateId> >(@event.Data))); }