我们正在开始新的项目,它将使用MVC3和mongoDB进行数据库存储。任何人都可以指出我们更好的项目架构。
我们有以下问题:
注意:我已经看到很少其他SO问题,而且这些问题没有直接回答我的问题。
提前致谢。
答案 0 :(得分:1)
在我参与的项目中,我们最终将您拥有的核心和数据结合起来。最初,我们在服务和具有Mongo查询的DAL中完全分离了对业务逻辑的关注。因为当你使用MongoDB时,它与使用RDBMS非常不同,我们发现我们的大部分业务逻辑都是以使Mongo特定的方式编写的,所以我们将这些层组合在一起,因为我们看起来几乎有一个冗余层,如果我们决定回到RDBMS,我们可能会重写一些逻辑。
至于你的问题,你的Domain对象是你的Mongo实体,所以我把它们放在你的数据层中。然后,我将在您的WEB项目中使用您的MVC模型,并使用Automapper在它们之间进行映射。