Example #1
0
        public Task <Unit> Handle(CreateSomeDataCommand request, CancellationToken cancellationToken)
        {
            try
            {
                using (var context = _dbContext)
                {
                    var businessUser = _businessUserRepositoy.GetByApplicationUserId(request.ApplicationUserId, context);
                    var someData     = SomeAggregate.Create(request, businessUser.Id);
                    _someDataWriteRepository.Create(someData, context);

                    context.SaveChanges();
                }

                _eventBus.Publish(new SomeDataCreatedEvent(request.Id,
                                                           request.FirstName,
                                                           request.MiddleName,
                                                           request.LastName,
                                                           request.Title,
                                                           request.CreationDate));

                return(Unit.Task);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }