Skip to content
/ CoreMe Public

作为个人.NET 开发技术的积累、实践合集,基于.NET 8实现基础的项目架构,为后期个人项目快速开发提供基座,开箱即用

License

Notifications You must be signed in to change notification settings

Memoyu/CoreMe

Repository files navigation

memoyu

CoreMe

基于.NET8开箱即用项目模板

简介

作为个人.NET 开发技术的积累、实践合集,基于.NET 8实现基础的项目架构,为后期个人项目快速开发提供基座,开箱即用; 遵循CleanArchitecture设计理念(Ctrl C + V)

衍生项目

功能实现

  • 系统日志写入/查询;
  • 用户、访客管理;
  • 角色、权限管理;

分层结构

src
├─CoreMe.Application -- 应用服务模块
│  ├─Users -- 服务名称(具体服务实现,例如:文章管理、权限管理等)
│  │  ├─Commands -- 增删改命令操作(对数据造成变更的处理)
│  │  ├─Common -- 当前服务公有实体,例如:响应、请求
│  │  ├─Events -- 事件触发EventHandler
│  │  └─Queries -- 查询操作(对数据进行读取)
│  │      ├─Anlyanis -- 统计分析数据
│  │      ├─Get -- 获取详情
│  │      ├─List -- 获取列表
│  │      └─Page -- 获取分页
│  └─Common -- 服务公有模块
│     ├─Behaviours -- MediatR管道切面行为(AOP)
│     ├─Exceptions -- 自定义异常
│     ├─Extensions -- 扩展方法
│     ├─Interfaces -- 接口定义
│     │  ├─Persistence -- 数据相关定义
│     │  │  └─Repositories -- 仓储定义(基础仓储定义)等
│     │  ├─Security -- 安全相关接口定义
│     │  └─Services -- 服务接口定义
│     ├─Mappings -- Mapster实体映射IRegister
│     ├─Models -- 公共模型定义,例如:配置、响应、请求等基础实体
│     ├─Request -- 进程内通信基础定义
│     ├─Security -- 安全相关的实体定义
│     ├─Services -- 服务实现,例如后台任务服务
│     └─Utils -- 工具类
├─CoreMe.Domain -- 服务领域模块
│  ├─Common -- 公共实体定义
│  ├─Constants -- 常量定义
│  ├─Entities -- 数据库实体定义
│  │  └─Mongo -- MongoDB实体定义
│  ├─Enums -- 枚举定义
│  ├─Events -- 事件定义
│  └─ValueObjects -- 值对象定义
├─CoreMe.Infrastructure -- 基础设施模块
│  ├─Persistence -- 数据持久化实现
│  │  └─Repositories -- 数据库仓储实现
│  ├─Region -- ip2region进一步封装实现
│  └─Security -- 安全相关实现,例如JWT、当前用户、权限验证
└─CoreMe.Api -- 外放接口模块
    ├─Controllers -- 客户端接口定义
    │  └─Admin -- 管理端接口定于
    └─wwwroot -- 静态文件
        └─Assets -- 资源文件

相关技术

模块 开源地址
API文档 RicoSuter/NSwag
数据库 dotnetcore/FreeSql + MySQL + MongoDB + MongoDB C# Driver
对象存储 七牛云 + qiniu/csharp-sdk
缓存 Redis + dotnetcore/EasyCaching
进程内通信 jbogard/MediatR
身份认证 Authentication(内置) + jwt
参数验证 FluentValidation/FluentValidation
日志 serilog/serilog
限流 stefanprodan/AspNetCoreRateLimit
IP解析 lionsoul2014/ip2region
雪花ID yitter/idgenerator
对象映射 MapsterMapper/Mapster
Json序列化/反序列化 System.Text.Json(内置)
后台任务调度 BackgroundService(内置)
实时通信 SignalR/SignalR
整体设计参考 CleanArchitecture
容器 Docker
DevOps Azure

参考项目

在此,感谢各位大佬的开源

开源协议

MIT License. See License here for details.

About

作为个人.NET 开发技术的积累、实践合集,基于.NET 8实现基础的项目架构,为后期个人项目快速开发提供基座,开箱即用

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages