Я пытаюсь найти методологию, когда использовать объекты передачи данных и когда использовать таблицы данных.
В качестве примера проблемы, с которой я сталкиваюсь в нашей системе ...
У нас есть 6 различных сборок бизнес-сущностей, представляющих одни и те же вещи, но с разными свойствами. Они были созданы несколькими разработчиками, занимающимися различными проблемами в течение нескольких лет.
Например, различные приложения, использующие класс «Велосипед» на протяжении многих лет, были связаны с различными свойствами велосипеда. Поэтому они вызывали разные методы данных, которые только извлекали и заполняли свойства, которыми они занимались.
Служба данных 1 Заполняет
Служба данных 2 заполняет
и каждый использует свой бизнес-объект. Очевидно, это смешно, вы не можете создавать новый класс для каждой возможной комбинации свойств.
Мои интуитивные ощущения говорят мне, что если это проблема, то, вероятно, нам следует использовать ORM.
Но пока я хочу сказать.
Если вы заполняете или возвращаете всю строку из таблицы, используйте DTO / Business Entity, соответствующий базе данных.
Если вы возвращаете случайный набор свойств, используйте таблицу данных.
Может ли кто-нибудь предложить какое-нибудь руководство?
Спасибо