Почему репозитории данных не статичны?

Я смотрел метод репозитория для приложения ASP.NET MVC и заметил, что статический класс не использовался. Поскольку репо является CRUD, почему бы не сделать его статическим?

Ответ 1

1) Трудно выполнять модульное тестирование со статическими классами (если вы тестируете класс, который зависит от вашего репозитория, вы хотите, чтобы этот тест работал против фальшивого "mocked" объекта репозитория вместо вашего реального)

2) Вы часто хотите иметь 1 экземпляр репозитория для каждого запроса, чтобы было легче убедиться, что нек-рые изменения от одного пользователя не испортили работу другого пользователя.

Ответ 2

Устойчивость шаблона шаблона репозитория, статическая классификация уменьшает его.