Здравствуйте, Ules, Вы писали:
U>Есть ли более оптимальный/правильный путь?
1) Чистая рефлексия: через рефлексию читаем поля, через нее же устанавливаем у другого объекта
2) Рефлексия + рантайм кодогенерация: через рефлексию читаем список полей, далее генерируем процедуру копирования данных.
Остается открытым вопрос: какое копирование использовать (глубокое или поверхностное)?