Почему хранилища данных не статичны? - PullRequest
11 голосов
/ 11 апреля 2011

Я искал метод repository для приложения ASP.NET MVC и заметил, что класс static не используется.

Поскольку репо составляет CRUD, почему бы не сделать его static?

Ответы [ 2 ]

26 голосов
/ 11 апреля 2011

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

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

0 голосов
/ 11 апреля 2011

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

...