EcommerceDDD

其他类别 2025-08-03

欢迎来到电子商务DDD

该项目是我用来结合几种尖端技术和建筑模式的实验全栈应用程序。感谢您到达这里!如果您喜欢该项目,请给出一个。它促使我不断提高它。


建筑学

高级系统体系结构

详细的体系结构

EcommerceDDD.ProductCatalog │   │ ├── API │   │ ├── Application │   │ ├── Domain │   │ └── Infrastructure │   ├── QuoteManagement │   └── ShipmentProcessing │ ├── SPA └── docker-compose">
├── Core
├── Core.Infrastructure
│
├── Crosscutting
│   ├── ServiceClients
│   ├── ApiGateway
│   ├── SignalR
│   └── IdentityServer
│
├── Services
│   ├── CustomerManagement
│   ├── InventoryManagement
│   ├── OrderProcessing
│   ├── PaymentProcessing
│   ├── ProductCatalog
|   |   └─ EcommerceDDD .ProductCatalog
│   │      ├── API
│   │      ├── Application
│   │      ├── Domain
│   │      └── Infrastructure
│   ├── QuoteManagement
│   └── ShipmentProcessing
│
├── SPA
└── docker-compose

  • 它定义了所有基础项目的构建块和抽象。它的性质非常抽象,没有实现。

  • 核心
    它具有一些抽象和实施,用于所有微服务和基础依赖性使用的基础架构。

  • 横切
    它包含跨切割所有微服务的项目实现,例如IdentityServer和API网关。

  • 服务
    组成后端的微服务是尽可能简单的,结构为具有API,应用程序,域和基础结构的垂直切片结构。

    EcommerceDDD.ProductCatalog │   ├── API │   ├── Application │   ├── Domain │   └── Infrastructure">
      ├── EcommerceDDD .ProductCatalog
      │   ├── API
      │   ├── Application
      │   ├── Domain
      │   └── Infrastructure
    
    • API
      用于启用客户端和服务器之间的通信的RESTFUL API。

    • 应用
      它策划了外部世界与域之间的交互,以通过处理命令和查询来通过用例执行应用程序任务。

    • 领域
      通过聚合,命令,值对象,域服务,存储库定义和域事件的结构化实现。

    • 基础设施
      它是上层层的支持库,处理基础结构问题,例如通过实施存储库,数据库映射和外部集成等基础结构问题。

    • 水疗中心(单页应用程序)
      轻巧的基于角度的水疗中心,可提供功能性和用户友好的UI。


使用的技术

  • ASP.NET Core API和C#12用于跨平台后端:
    • .NET 8
    • koalesce.openapi 0.1.1-alpha.2
    • Ocelot 23.4.3
    • Marten 7.40.0
    • Confluent Kafka 2.10.0
    • 实体框架核心8.0.15
    • npgsql.entityframeworkcore.postgresql 8.0.11
    • ASP.NET核心身份8.0.15
    • ASP.NET核心身份验证JWTBEARER 8.0.15
    • Duende IdentityServer 7.2.1
    • 波莉8.5.2
    • Xunit 2.9.3
    • Nsubstitute 5.3.0
    • Swaggergen/Swaggerui 8.1.1
    • Microsoft.Kiota。* 1.17.2
  • Angular v19.2.7和Typescript 5.5.4,用于前端:
    • Kiota 1.0.2
    • 开玩笑29.7.0
    • ngbootstrap 18.0.0/ bootstrap 5.3.5
    • 字体很棒6.7.2
    • Toastr 19.0.0

您需要运行什么

使用Docker运行微服务

该项目旨在轻松地在Docker容器中运行,因此您需要的只是1个命令行来提高所有内容。确保您已经安装了Docker并玩得开心!

  • 下载Docker:Docker桌面,并支持WLS 2

使用终端,运行:

 $ docker-compose up

如果您想在调试时运行它,也可以将Docker-compose.dcproj设置为Visual Studio上的启动项目。


运行Angular Spa

使用终端,导航到EcommerceDDD .SPA并运行以下命令,分别在http:// localhost:4200:在http:// localhost上提供水疗中心:

 $ npm install
 $ ng serve
下载源码

通过命令行克隆项目:

git clone https://github.com/falberthen/EcommerceDDD.git