示例#1
0
        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);
            }));
        }
示例#2
0
        private void UpdateName(Dto dto, TransformationDto transformationDto)
        {
            var stringBuilder = new StringBuilder(dto.Name);

            stringBuilder.AppendFormatNonEmptyString("_{0}", transformationDto.Name);

            dto.Name = stringBuilder.ToString();
        }