使用存储库模式时,是否建议每个数据库表都有一个Repository类?我还会将一个服务层类映射到一个存储库类。我正在努力了解一个存储库或服务层类应该有多少东西。
谢谢!
答案 0 :(得分:3)
每个类都应该有一个存储库,它是您域中的根聚合。
答案 1 :(得分:3)
存储库应该独立于您的数据库结构。它们封装了从数据库到域模型的所有映射工作,反之亦然。这可能与1个数据库表有关,或者它可能来自10个表,没关系。
通常,单个存储库对应于单个域模型类,但这也不是一个牢不可破的规则。如果您有几个非常密切相关的域类,特别是在继承或包含关系中,那么存储库处理多个不同类型并不罕见。尽管如此,如果可以的话,尽量坚持使用一个是个好主意。