Такая логика настолько проста, что, я думаю, она растягивается, чтобы назвать ее логика реализации .Может быть, просто гораздо круче клонировать таким образом:
- Вы можете вызвать MemberwiseClone для создания мелкой копии
- DTO знает все, что нужно для клонирования себя
- Вам не нужно будет создавать для этого отдельные объекты или помощников, которые зависят от отражения
Не добавление логики клонирования в DTOs для меня было бы очевидным примером слишком большого следования архитектурным шаблонам.