洋葱架构是否与Service-Repository-UnitOfWork模式类似?

时间:2012-08-03 02:45:52

标签: asp.net-mvc architecture dependency-injection inversion-of-control onion-architecture

我一直在使用我称之为Service-Repository-UnitOfWork模式编写MVC应用程序,如下所示:

MVC Controllers --> Services --> Repositories --> EntityFramework

然后

Repositories/EntityFramework (constructs Domain Objects/POCO) --> Services --> Transform to ViewModels --> Controller --> Send the ViewModel/View to the client.

我使用IoC容器来配置服务,存储库和UnitOfWork的接口,这些接口被注入到各种组件的构造函数中。

我的问题是,这根本就像洋葱建筑吗?

这有意义吗?

1 个答案:

答案 0 :(得分:3)

不,不是。这些是来自不同类别的模式。

洋葱架构管理整个解决方案,它与“多层”或“SOA”或“客户端 - 服务器”处于同一级别。

“服务层”,“存储库”,“UoW”代表实现模式,它们管理应用程序内部的特定部分。