【问题标题】:Is seed data part of domain layer?种子数据是域层的一部分吗?
【发布时间】:2021-12-20 17:20:08
【问题描述】:

我喜欢在我的解决方案中组织包以对应三个经典的洋葱架构层:

  • 应用
  • 基础设施

让我们考虑一个计算股票价格的示例交易所应用程序。此示例应用程序可能需要一些可用的公司初始数据。当然,这些公司必须对该领域是可以理解的。我知道我应该在域包中只有业务规则,但是如果没有这些公司的初始集合,业务将无法生存。我经历过的大多数教程都在基础设施的某个地方及其依赖项中包含这些数据。例如,有人配置了持久性,并在某处向数据库添加了一些记录或其他内容。在运行域包中的应用程序之前,我创建了一个需要持久化的所有聚合的静态集合。然后在基础设施包中引用它们以在应用程序启动时执行插入逻辑。这是正确的方法吗?如果没有,请解释我做错了什么?问候

【问题讨论】:

  • 请添加代码来展示您所取得的成就

标签: dns seeding onion-architecture hexagonal-architecture


【解决方案1】:

我认为您的方法(在域中定义为聚合的硬编码静态数据)比在基础架构中使用纯数据加载存储设备更正确,因为您是从应用程序执行此操作并检查数据验证。另一方面,基础设施中的普通数据可能包含无法检测到的错误。

【讨论】:

    猜你喜欢
    • 2018-01-11
    • 2018-11-01
    • 2021-10-27
    • 2011-01-15
    • 1970-01-01
    • 1970-01-01
    • 2012-10-31
    • 2016-02-27
    • 2011-05-25
    相关资源
    最近更新 更多