From 06f7c1ca77c9bd3f7a2bc9f19be312c6d25a9e0e Mon Sep 17 00:00:00 2001 From: dingsongjie Date: Wed, 15 Jan 2020 14:51:28 +0800 Subject: [PATCH] DispatchDomainEventsAsync 优化 --- src/Pole.Domain.EntityframeworkCore/MediatR/MediatorExtension.cs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/Pole.Domain.EntityframeworkCore/MediatR/MediatorExtension.cs b/src/Pole.Domain.EntityframeworkCore/MediatR/MediatorExtension.cs index f91d849..e6a32b2 100644 --- a/src/Pole.Domain.EntityframeworkCore/MediatR/MediatorExtension.cs +++ b/src/Pole.Domain.EntityframeworkCore/MediatR/MediatorExtension.cs @@ -24,10 +24,13 @@ namespace Pole.EntityframeworkCore.MediatR domainEntities.ToList() .ForEach(entity => entity.Entity.ClearDomainEvents()); - foreach(var domainEvent in domainEvents) - { - await mediator.Publish(domainEvent); - } + var tasks = domainEvents + .Select(async (domainEvent) => + { + await mediator.Publish(domainEvent); + }); + + await Task.WhenAll(tasks); } } } -- libgit2 0.25.0