在Repository类中放多少钱?

时间:2010-05-05 21:34:09

标签: design-patterns repository-pattern

使用存储库模式时,是否建议每个数据库表都有一个Repository类?我还会将一个服务层类映射到一个存储库类。我正在努力了解一个存储库或服务层类应该有多少东西。

谢谢!

2 个答案:

答案 0 :(得分:3)

每个类都应该有一个存储库,它是您域中的根聚合。

答案 1 :(得分:3)

存储库应该独立于您的数据库结构。它们封装了从数据库到域模型的所有映射工作,反之亦然。这可能与1个数据库表有关,或者它可能来自10个表,没关系。

通常,单个存储库对应于单个域模型类,但这也不是一个牢不可破的规则。如果您有几个非常密切相关的域类,特别是在继承或包含关系中,那么存储库处理多个不同类型并不罕见。尽管如此,如果可以的话,尽量坚持使用一个是个好主意。