public IEnumerable <TBaseEvent> Query(EventQueryCriteria <TObjectId> criteria) { var expr = criteria.ToExpression(this, type => type.FullName); var events = this.Events; if (expr != null) { events = events.Where(expr); } return(events.Select(x => x.Event)); }
public IEnumerable <DomainEvent> Query(EventQueryCriteria <Guid> criteria) { // Both forms are available. var expr2 = criteria.ToExpression(this, type => type.Name); var expr = this.ToExpression(criteria, type => type.Name); if (expr == null) { return(this.events.Select(x => x.Event)); } return(this.events.AsQueryable().Where(expr).Select(x => x.Event)); }