private async Task RaiseAsync( AbstractEvent @event, Type eventType, object entity, IEnumerable <PropertyEntry> properties) { var domainService = @event.GetServiceProvider() .GetService <DomainEventHandleService>(); foreach (var domainEvent in GetDomainEvents(eventType, entity, properties)) { await domainService.RaiseAsync(domainEvent); } }
private async Task RaiseAsync( AbstractEvent @event, Type eventType, object entity, IEnumerable <PropertyEntry> properties) { foreach (CollectionEntry collection in @event.Session.PersistenceContext.CollectionEntries.Values) { collection.IsProcessed = true; } var domainService = @event.GetServiceProvider().GetRequiredService <DomainEventHandleService>(); foreach (var domainEvent in GetDomainEvents(eventType, entity, properties)) { await domainService.RaiseAsync(domainEvent); } }