• 领域模型应用分层


    shared(共享层): 可以将此工程通过私有的NuGet包来存储,其他的工程引用NuGet包即可。

    • Core

    承载基础的简单的类型,比如说我们的自定义异常,或者一些帮助类。

    • Domain.Abstractions

    在领域模型中定义一些基类或者接口,领域事件的接口,领域事件处理的接口,Entity的接口和Entity的基类。

    • Infrastructure.Core

    对仓储(Repository)和EFContext定义基础的代码,如接口和基类。

    Domain(领域层):

    • 聚合(Aggregate)

    存取对应领域模型的聚合根。每个聚合根上可以有自己的数据(data)和行为(behavior)。

    • 领域事件 (Events)

    Infrastructure(基础设施层):

    对仓储层和一些共享代码的具体实现,如对不同聚合根的Repository的实现,对DbContext的具体定义(如EntityConfigurations)等。

    Application(应用层):

    • Api
      • Application-(Commands(CQRS命令职责),DomainEventHandlers(领域事件的处理),IntegrationEvents(集成事件的处理),Queries(CQRS查询职责))
      • Controller-(定义前后端交互的接口)
      • Extensions-(ApplicationBuilderExtensions, ServicesCollectionExtensions)
      • Infrastructure-(Auth,Caching)
    • BackgroundTasks

    后台任务用来执行特殊的Job,可以是一个控制台的程序

  • 相关阅读:
    结构体和指针
    冒泡排序、指针、函数
    指针学习笔记
    C++学习笔记
    背包问题
    零钱兑换2【DP】
    零钱兑换1【DP】
    执行hadoop jar命令时报Not a valid JAR的原因分析和解决方案
    斐波那契数列
    具有n个结点的二叉树有多少种形态
  • 原文地址:https://www.cnblogs.com/Xieyiincuit/p/14016858.html
Copyright © 2020-2023  润新知