Sha*_*Wyk 8 architecture domain-driven-design onion-architecture ddd-service
我对应用程序服务的理解是它们在域和用户界面之间进行链接.换句话说,它们为控制器提供服务以在域上执行操作.
我的应用程序中有以下项目布局:
我Service Interfaces在Web UI项目之外的谎言.然后在Web UIProject中我实现了服务接口Services.
然而,当我们将其付诸实践时,这种结构有点瑕疵并产生循环依赖.我试图在这个链接中遵循架构.https://www.develop.com/onionarchitecture
对于给定的服务,我想传入视图模型,基于视图模型对域执行操作,然后返回更新的视图模型.这种方法有误吗?
我的理解是否正确,应用程序服务本质上将视图模型作为参数,更新域中的一些细节并在需要时查看模型然后返回视图模型?
要么
应用程序服务是否仅将c#数据类型和域模型作为参数处理并返回相同的数据类型?换句话说,在视图模型中不获取或设置任何信息.实际上并不知道视图模型的存在.
我只需要澄清一下严格DDD方法的最佳方法.
回答你的问题:是的,你说得对。对于 MVC 应用程序,您可以设计接受并返回 ViewModel 并在内部使用 Domain 进行操作的层
Dino Esposito在这里制作了解决方案结构的一个很好的例子。我将我的项目采用了这种结构,它变得更加清晰。我的观点是,洋葱架构对于中小型项目来说过于复杂。