Допустимо ли когда-либо для DTO иметь методы экземпляра, которые возвращают производные значения, основанные на данных DTO? Или DTO должны быть чистыми контейнерами данных без каких-либо дополнительных методов (кроме методов получения / установки)?
Пурист во мне говорит, что бизнес-логике очень легко проникнуть в такие методы. Однако, если (например) DTO является общим для прикладных уровней, то, возможно, есть аргумент для использования таких методов в DTO.
Что вы думаете по этому поводу? Есть ли ситуации, когда это приемлемо, или следует избегать такого рода вещей? И почему / почему нет?