@stcmd04236

Как избежать множественного создания классов в c# web api?

Добрый день! Есть экспериментальный проект на aspnet web api. ORM EF6. К примеру есть класс Order, OrderView, OrderDataBindingModel. Order это класс который используется в EF. OrderView для создания ответа клиенту. OrderDataBindingModel для получения данных от клиента. Разница класса Order и OrderView лишь в полях т.е. некоторые поля отсутствует в OrderView. А OrderDataBindingModel отличается с тем что в них написаны правила DataAnnotations для проверки валидности данных которые получены от клиента. Для каждой сущности придется создавать по три класса в простейших ситуациях.
Как можно избежать от множественного создания классов? Про паттернах программирования прочитал но не знаю как применит в этом случае.
  • Вопрос задан
  • 333 просмотра
Решения вопроса 1
@kttotto
пофиг на чем писать
Вообще у Вас все правильно. Есть слой моделей, которые являются сущностями, есть слой моделей, которые для отображения данных, есть слой dto моделей. У меня в проектах тоже всегда так. Зря Вы думаете, что плодите их, они находятся в разных слоях (модулях), можете считать их разными доменными моделями. Для больших и сложных проектов, это оправдано. И хоть все классы со стороны могут показаться одинаковыми, но они разные, т.к. относятся к разным доменным моделям и выполняют разную функцию.

Если у Вас проект небольшой, то можно было обойтись и одним слоем для работы с ORM и не усложнять код.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
EreminD
@EreminD
Кое-что умею
Один класс на одну сущность и репозиторий
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы