【问题标题】:Best place for Dependency Injection In Domain Driven Design领域驱动设计中依赖注入的最佳位置
【发布时间】:2018-06-19 06:46:12
【问题描述】:

在 DDD 的上下文中,我理解应用程序服务编排域服务和存储库(应用程序工作流),现在我的问题是哪个层负责注入依赖项,依赖项注入必须在 UI 中完成(使用应用程序的层服务)或在应用程序服务中。例如,在具体的存储库注入的情况下,应该由哪一层来做呢?

另一个问题是,我可以将应用服务代码直接放在 Web 服务中,并将该 Web 服务用作应用服务层吗?

最好的问候

【问题讨论】:

    标签: design-patterns dependency-injection domain-driven-design


    【解决方案1】:

    ... 是依赖注入必须在 UI(使用应用程序服务的层)或 Application Service 中完成。例如,在具体的存储库注入的情况下,应该由哪一层来做呢?

    依赖注入容器应该尽可能高的使用。一般来说,这意味着在应用程序的引导程序中,甚至在 UI 之前。

    例如,在具体的存储库注入的情况下,应该由哪一层来做呢?

    第一次调用的层,整个应用程序的入口点,在Composition root中。

    另一个问题是,我可以将应用服务代码直接放在 Web 服务中,并将该 Web 服务用作应用服务层吗?

    这在很大程度上取决于您的架构以及对您而言什么是“Web 服务”。如果您指的是分层架构:如果它类似于 REST 控制器,则否,在这种情况下,“Web 服务”在表示层中,而应用程序服务在应用程序层中。应用层包含所有用例,每个应用服务都是一个用例。阅读更多here

    【讨论】:

      猜你喜欢
      • 2012-12-10
      • 1970-01-01
      • 2013-12-17
      • 2023-04-05
      • 1970-01-01
      • 2010-11-14
      • 2011-10-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多