Skip to content

👋基于.NET 8实现的个人博客系统接口服务端

License

Notifications You must be signed in to change notification settings

Memoyu/Memo.Blog

Repository files navigation

memo blog

基于.NET8开发的Blog系统接口服务

简介

本项目为自用Blog系统的后端接口服务,基于.NET 8实现,遵循CleanArchitecture设计理念(Ctrl C + V)

管理端 客户端
预览 预览

线上地址:

管理端:管理端(使用游客登录即可)

移动管理端:Coming soon

客户端:管理端

Tips:小霸王,稍微等一下,轻点!

相关项目:

管理端:Memo.Blog.Admin: 管理端

移动管理端:Memo.Blog.App: 移动管理端

客户端:Memo.Blog.Client: 客户端

功能实现

  • Blog系统数据统计;
  • 文章、分类、标签、评论管理;
  • 开源项目同步/管理;
  • 系统、访问日志写入/查询;
  • 动态、友链、关于个人等管理;
  • 用户、访客管理;
  • 角色、权限管理;

分层结构

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

参考项目

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

感谢授权

🙏🏻 感谢JetBrains对本项目授予的开发工具开源许可 JetBrains Open Source Support

开源协议

MIT License. See License here for details.

About

👋基于.NET 8实现的个人博客系统接口服务端

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published