NetCore开源项目,适合新手学习

打印 上一主题 下一主题

主题 906|帖子 906|积分 2718

VerEasy.Core

先容

这是一个基于 .NET Core 的易开发的框架,附 vue3前端框架。提供了一个高效可扩展的API程序。
支持 JWT 认证、数据库操纵、日志记录、异步处置处罚等特性,能够满意大多数业务需求。
该项目可以与前端应用、移动应用和其他服务进行无缝集成,为开发者提供灵活、高效的办理方案。
功能与进度

框架模块


  • ⭐框架整体接纳 仓储+服务+接口
  • ⭐接口重要接纳异步形式 async/await
  • ⭐接纳国产开源ORM框架 SqlSugar
  • ⭐支持多库使用,可支持多种数据库(sqlsugar官网)
  • ⭐项目内置数据种子文件,项目启动初始化基础表和数据
  • ⭐Serilog日志记录功能 LogAop 全局主动记录,支持输出到 本地文件,数据库,控制台
  • ⭐支持代码生成
    1.实体生成表
    2.表生成实体
    3.表生成业务文件(仓储、服务、控制器)
    4.由数据库生成种子数据
    ……
  • ⭐使用 SwaggerAPI 文档
  • ⭐使用 Automapper 做实体间映射
  • ⭐使用 AutoFac 做依赖注入容器,并支持批量注入(如多个AOP)
  • ⭐支持 Cors 跨域处置处罚
  • ⭐支持 JWT 授权鉴权处置处罚
  • ⭐封装 GlobalException 全局异常过滤器
  • ⭐封装 Quartz 支持定时任务处置处罚
  • ⭐整体接纳 SnowflakeId 雪花ID
  • ⭐实现了用户角色菜单权限分配
框架结构

整个框架追求的是易于扩展和使用,附有Vue3的前端项目,但整体不会牵连太深,方便和已有的前端项目进行集成。
若是要删除此中代码,也需要调整对应的引用等,无法避免。
  1. ├── VerEasy.Common/                 公共方法类(用于全局的通用方法)
  2. │   ├── FastCode/                   代码生成相关文件夹
  3. │   ├── Helper/                     辅助方法文件夹
  4. │   ├── LogHelper/                  用于输出控制台日志的拓展方法
  5. │   ├── Utils/                      工具类(类似配置文件读取,雪花Id生成等)
  6. ├── VerEasy.Core.Api/               接口层
  7. │   ├── Controllers/                控制器文件夹
  8. │   ├── Filter/                     过滤器文件夹
  9. │   ├── wwwroot/                    静态文件夹
  10. ├── VerEasy.Core.IRepository/       仓储接口层
  11. │   ├── Base/                       基础增删改接口
  12. │   ├── IRepository/                基础方法满足不了,可扩展的仓储接口层
  13. │   │   ├── IDepartmentRepository.cs
  14. ├── VerEasy.Core.IService/          服务接口层(同上)
  15. │   ├── Base/
  16. │   │   ├── IBaseService.cs
  17. │   ├── IService/
  18. │   │   ├── IDepartmentService.cs
  19. ├── VerEasy.Core.Models/            Model层
  20. │   ├── Base/                       统一的字段基础类(如Id,修改人,修改时间等)
  21. │   │   ├── BaseModel.cs
  22. │   ├── Dtos/                       Dto层,用于封装返回统一的返回格式等
  23. │   ├── Enums/                      枚举类文件夹(业务需要定义枚举,或者全局都会使用到的枚举)
  24. │   ├── ViewModels/                 实体文件夹(表结构对应的实体文件夹)
  25. ├── VerEasy.Core.Repository/        仓储实现层(继承仓储接口层,并实现定义的接口,结构同上)
  26. │   ├── Base/
  27. │   ├── Repository/
  28. ├── VerEasy.Core.Service/           服务实现层(继承服务接口层,并实现定义的接口,结构同上)
  29. │   ├── Base/
  30. │   ├── Service/
  31. ├── VerEasy.Core.Tasks/             Task定时任务类(封装了Quartz)
  32. │   ├── Quartz.Net/                 Quartz相关文件夹(闲了扩展其他的)
  33. │   │   ├── IScheduleCenter.cs      调度器接口(启用调度器相关,例如执行job停止job)
  34. │   │   ├── JobFactory.cs           Job工厂,继承官方的IJobFactory
  35. │   │   ├── JobListener             Quartz监听器,监听定时任务的执行情况
  36. │   │   ├── ScheduleCenter          调度器接口的实现
  37. │   │   ├── Jobs/                   具体的定时任务文件夹
  38. ├── VerEasy.Extensions/             扩展类库(主要注入其他的服务)
  39. │   ├── Aop/                        AOP文件夹
  40. │   ├── Authorization/              身份认证相关(Jwt)
  41. │   ├── HostedService/              管理需要项目启动就执行的服务(如持久化Quartz)
  42. │   ├── ServiceExtensions/          服务扩展文件夹(各种服务的注入配置)
  43. │   │   ├── HttpContext/            防止开发不更新修改人修改时间等信息引入的自动获取登录信息
  44. │   │   ├── Module/                 其他服务(如:mapper的映射关系配置)
  45. │   │   │   ├── MappingProfileModule.cs
  46. │   ├── ServiceMiddlewares/         中间件管道文件夹
  47. ├── VerEasy.Serilog/                日志类库
  48. │   ├── LoggerConfigurationExtensions.cs 日志的输出配置(输出到数据库或本地等,整体规范化一些)
复制代码

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

去皮卡多

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表