Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why aren't data repositories static?

I was looking at the repository method for an ASP.NET MVC app and noticed a static class wasn't used.

Since the repo is CRUD, why not make it static?

like image 804
Darcy Avatar asked Apr 11 '11 14:04

Darcy


1 Answers

1) It's difficult to do unit testing with static classes (if you are testing a class that depends on your repository, you want that test to work against a fake 'mocked' repository object instead of your real one)

2) You often want to have 1 repository instance per-request to make it easier to ensure that uncommited changes from one user don't mess things up for another user.

like image 87
Robert Levy Avatar answered Sep 20 '22 07:09

Robert Levy