public async Task Handle(TCommand command) { ValidationResult results = _validator.ValidateCommand(command); if (results.IsValid) { await _decoratee.Handle(command); } else { throw new DomainValidationException(results); } }