Шаблон репозитория используется для абстрагирования от конкретной базы данных и технологии сопоставления объектных отношений (например, EF). Поэтому я могу легко заменить (например) мои привязки структуры Entity с Linq на SQL в будущем, если я это сделаю.
Но когда я использую EF, у меня есть классы сущности из модели - то есть они генерируются из этой визуальной диаграммы. Если я использую эти сгенерированные классы сущностей в моем репозитории, а затем решил заменить EF на что-то еще, я удалю эту диаграмму визуального объекта, а это значит также правильно удалить классы?
Точка, к которой я обращаюсь, заключается в том, что мой репозиторий будет зависеть от структуры Entity, которая находится на уровне доступа к данным, потому что она будет использовать классы, созданные EF.
Как удалить эту зависимость?
Также обратите внимание, что я использую EF в первую очередь из-за его способности генерировать все из этой визуальной диаграммы - я просто рисую диаграмму и позволяю ей генерировать базу данных для меня со всеми внешними ключами и т.д. Мне это очень нравится, а не хотите даже думать о командах SQL.