public Task Handle(IEventWrapper <IParallelShockAdded> @event, CancellationToken cancellationToken) { var transformation = new TransformationDto { Name = ParallelShock, Parameters = new List <ParameterDto>() { new ParameterDto { Name = nameof(@event.Content.Shift), Value = @event.Content.Shift.ToString() }, new ParameterDto { Name = nameof(@event.Content.ShockTarget), Value = @event.Content.ShockTarget } } }; return(_readModelRepository.Get(@event.AggregateId) .IfNotNull(recipe => { recipe.Transformations.Add(transformation); UpdateName(recipe, transformation); return _readModelRepository.Update(recipe); })); }
private void UpdateName(Dto dto, TransformationDto transformationDto) { var stringBuilder = new StringBuilder(dto.Name); stringBuilder.AppendFormatNonEmptyString("_{0}", transformationDto.Name); dto.Name = stringBuilder.ToString(); }