Я наткнулся на следующие две статьи Первый и Второй, в котором автор заявляет, что сущности ORM и доменные сущности не должны смешиваться.
Я сталкиваюсь именно с этой проблемой на данный момент, когда я кодирую EF 6.0 с использованием подхода Code First. Я использую классы POCO как объекты в EF, а также объекты моего домена/бизнеса. Но я часто нахожусь в ситуации, когда я определяю свойство как общедоступное или навигационное свойство как виртуальное только потому, что EF Framework заставляет меня это делать.
Я не знаю, что взять в качестве нижней строки двух статей? Должен ли я действительно создать, например, класс CustomerEF для инфраструктуры сущности и CustomerD для моего домена. Затем создайте репозиторий, который использует CustomerD, сопоставляет его с CustomerEF и выполняет некоторые запросы, а не отображает полученный CustomerEF в CustomerD. Я думал, что EF все касается сопоставления объектов домена с данными.
Поэтому, пожалуйста, дайте мне несколько советов. Могу ли я упустить важную вещь, которую EF может мне предоставить? Или это проблема, которая не может быть полностью решена EF? В последнем случае, что является хорошим способом решения этой проблемы?