在我的应用程序服务中,我有以下用于发布域事件的代码:
var document = await dbContext.Documents.GetAggregateAsync(message.DocumentId);
publisher.SubscribeTo<DocumentOwnerChanged>()
.UsingDelegate(
async a => await messageGateway.DocumentOwnerChanged(1, 1, 1));
document.ChangeOwner(message.OwnerId);
await dbContext.SaveChangesAsync();
await publisher.Publish(document.ReleaseEvents());
我试图决定是否喜欢在应用服务中发布事件的知识,或者我是否应该在根目录中将其外部化。
想法?