Шаблон репозитория Пошаговое объяснение

Может кто-нибудь, пожалуйста, объясните мне Шаблон репозитория в.NET, шаг за шагом приводя очень простой пример или демонстрацию.

Я знаю, что это очень распространенный вопрос, но до сих пор я не нашел удовлетворительного ответа.

2 ответа

В качестве резюме я бы описал более широкое влияние шаблона хранилища. Это позволяет всему вашему коду использовать объекты без необходимости знать, как эти объекты сохраняются. Все знания о постоянстве, включая сопоставление таблиц и объектов, безопасно хранятся в хранилище.

Очень часто вы обнаруживаете, что SQL-запросы разбросаны по базе кода, и когда вы добавляете столбец в таблицу, вам приходится искать файлы кода, чтобы попытаться найти использование таблицы. Влияние изменений является далеко идущим.

С шаблоном репозитория вам нужно будет изменить только один объект и один репозиторий. Воздействие очень мало.

Возможно, это поможет подумать, почему вы используете шаблон хранилища. Вот несколько причин:

  • У вас есть единственное место для внесения изменений в ваш доступ к данным

  • У вас есть одно место, ответственное за набор столов (обычно)

  • Репозиторий легко заменить на поддельную реализацию для тестирования, поэтому вам не нужно иметь базу данных, доступную для ваших модульных тестов.

Есть и другие преимущества, например, если вы использовали MySQL и хотели перейти на SQL Server - но я никогда не видел это на практике!

Это хороший пример: Пример шаблона репозитория в C#

По сути, хранилище скрывает детали того, как именно данные извлекаются / сохраняются из / в базу данных. Под одеялом:

  • для чтения создает запрос, удовлетворяющий заданным критериям, и возвращает набор результатов.
  • для записи он выдает команды, необходимые для сохранения базового механизма персистентности (например, базы данных SQL) для сохранения данных
Другие вопросы по тегам