diff --git a/Domain/AggregateModel/LinkAggregate/Link.cs b/Domain/AggregateModel/LinkAggregate/Link.cs index 5233e91..c714487 100644 --- a/Domain/AggregateModel/LinkAggregate/Link.cs +++ b/Domain/AggregateModel/LinkAggregate/Link.cs @@ -1,4 +1,5 @@ using Base62; +using Domain.Events; using Domain.SeedWork; using System; using System.Collections.Generic; @@ -40,6 +41,8 @@ namespace Domain.AggregateModel.LinkAggregate AppId = appId; Time = DateTime.Now; CalculateShortCode(); + + AddDomainEvent(new LinkCreatedDomainEvent(this)); } /// /// 根据值计算短链字段 diff --git a/QRCodeService/Application/DomainEventHandler/LinkCreated/LogWhenLinkCreatedDomainEventHandler.cs b/QRCodeService/Application/DomainEventHandler/LinkCreated/LogWhenLinkCreatedDomainEventHandler.cs new file mode 100644 index 0000000..4ca2dbf --- /dev/null +++ b/QRCodeService/Application/DomainEventHandler/LinkCreated/LogWhenLinkCreatedDomainEventHandler.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using Domain.Events; +using MediatR; +using Microsoft.Extensions.Logging; + +namespace QRCodeService.Application.DomainEventHandler.LinkCreated +{ + public class LogWhenLinkCreatedDomainEventHandler : INotificationHandler + { + readonly ILogger logger; + + public LogWhenLinkCreatedDomainEventHandler(ILogger logger) + { + this.logger = logger; + } + + public async Task Handle(LinkCreatedDomainEvent notification, CancellationToken cancellationToken) + { + logger.LogInformation("domainEvent: link"); + } + } +}