Может кто-нибудь объяснить мне шаблон репозитория в .NET, шаг за шагом, давая очень простой пример или демонстрацию.
Я знаю, что это очень распространенный вопрос, но до сих пор я не нашел удовлетворительного ответа.
Может кто-нибудь объяснить мне шаблон репозитория в .NET, шаг за шагом, давая очень простой пример или демонстрацию.
Я знаю, что это очень распространенный вопрос, но до сих пор я не нашел удовлетворительного ответа.
В качестве резюме я бы описал более широкое влияние шаблона репозитория. Он позволяет использовать весь ваш код для использования объектов без необходимости знать, как объекты сохраняются. Все знания о сохранении, включая сопоставление таблиц с объектами, содержатся в репозитории.
Очень часто вы обнаружите SQL-запросы, разбросанные в кодовой базе, и когда вы приходите, чтобы добавить столбец в таблицу, вам нужно искать файлы кода, чтобы попытаться найти таблицы использования. Влияние изменения далеко идущее.
С шаблоном репозитория вам нужно будет только изменить один объект и один репозиторий. Воздействие очень мало.
Возможно, это поможет подумать о том, почему вы используете шаблон репозитория. Вот несколько причин:
У вас есть одно место для внесения изменений в доступ к данным.
У вас есть одно место, отвечающее за набор таблиц (обычно)
Легко заменить репозиторий ложной реализацией для тестирования - так что вам не нужно иметь базу данных, доступную для ваших модульных тестов
Существуют и другие преимущества, например, если вы использовали MySQL и хотели переключиться на SQL Server, но я никогда на практике этого не видел!
Это хороший пример: Пример шаблона репозитория в С#
В основном, репозиторий скрывает детали того, как именно данные извлекаются/сохраняются из/в базу данных. Под обложками: