fengling-platform/.planning/codebase/STACK.md
movingsam 1b8c937aa4
Some checks failed
Build and Push Docker / build (push) Failing after 23s
Publish NuGet Packages / build (push) Failing after 8s
feat: 添加 Gateway 路由实体到 Platform
- 新增 GatewayAggregate 领域实体 (GwTenant, GwTenantRoute, GwServiceInstance)
- 新增 IRouteStore, RouteStore, IInstanceStore, InstanceStore
- 新增 IRouteManager, RouteManager
- 合并 GatewayDbContext 到 PlatformDbContext
- 统一 Extensions.AddPlatformCore 注册所有服务
2026-02-28 23:53:00 +08:00

1.8 KiB
Raw Blame History

技术栈

分析日期: 2026-02-28

语言

主要:

  • C# 12 / .NET 10.0 - 核心平台实现

运行时

环境:

  • .NET 10.0 (ASP.NET Core)
  • 运行时: mcr.microsoft.com/dotnet/aspnet:10.0 (Docker)

包管理:

  • NuGet
  • 源:
    • https://gitea.shtao1.cn/api/packages/fengling/nuget/index.json (内部)
    • https://api.nuget.org/v3/index.json (NuGet.org)
  • 集中版本管理: Directory.Packages.props

框架

核心:

  • ASP.NET Core 10.0 - Web 框架
  • Entity Framework Core 10.0.0 - ORM

认证与身份:

  • Microsoft.AspNetCore.Identity.EntityFrameworkCore 10.0.0 - Identity 框架
  • OpenIddict.EntityFrameworkCore 7.2.0 - OAuth2/OpenID Connect 服务器

CQRS 与中介者:

  • MediatR 12.5.0 - 请求/命令处理的中介者模式

内部框架:

  • NetCorePal.Extensions.Domain.Abstractions 3.2.1
  • NetCorePal.Extensions.Primitives 3.2.1
  • NetCorePal.Extensions.Repository.EntityFrameworkCore 3.2.1
  • NetCorePal.Extensions.Repository.EntityFrameworkCore.Snowflake 3.2.1

关键依赖

数据库:

  • Npgsql.EntityFrameworkCore.PostgreSQL 10.0.0 - EF Core 的 PostgreSQL 提供程序
  • Microsoft.EntityFrameworkCore.Design 10.0.0 - EF Core 设计时支持

基础设施:

  • 无其他明确配置

配置

环境:

  • 配置通过 Fengling.Platform.Infrastructure/Extensions.cs 中的 AddPlatformCore<TContext>() 扩展方法加载
  • 数据库上下文通过 AddDbContext<TContext>() 模式注册

构建:

  • Directory.Packages.props - 集中包版本管理
  • NuGet.Config - 包源配置
  • Dockerfile - 多阶段构建(基础、构建、发布、最终)

平台要求

开发:

  • .NET 10.0 SDK
  • PostgreSQL 数据库
  • 支持 C# 的 IDE (Rider, VS, VS Code)

生产:

  • Docker 容器化(存在 Dockerfile
  • PostgreSQL 数据库
  • 多租户租户隔离

技术栈分析: 2026-02-28