为什么数据存储库不是静态的?

时间:2011-04-11 14:15:42

标签: c# asp.net-mvc repository-pattern

我正在查看repository MVC应用的ASP.NET方法,并注意到未使用static类。

由于回购是CRUD,为什么不将其设为static

2 个答案:

答案 0 :(得分:26)

1)使用静态类进行单元测试很困难(如果您正在测试依赖于您的存储库的类,那么您希望该测试针对假的'模拟'存储库对象而不是真实的存储库对象)

2)您经常希望每个请求拥有一个存储库实例,以便更轻松地确保来自一个用户的未经修改的更改不会让另一个用户陷入困境。

答案 1 :(得分:-1)

存储库模式增加可测试性,静态类别会降低它。