# VerEasy.Core **Repository Path**: wjping11360/vecore ## Basic Information - **Project Name**: VerEasy.Core - **Description**: NetCore易开发的框架,附基础vue3前端框架 - **Primary Language**: C# - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2025-01-14 - **Last Updated**: 2025-01-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # VerEasy.Core ## 介绍 这是一个基于 **.NET Core** 的易开发的框架,附 **vue3前端框架**。提供了一个高效可扩展的API程序。 支持 JWT 认证、数据库操作、日志记录、异步处理等特性,能够满足大多数业务需求。 该项目可以与前端应用、移动应用和其他服务进行无缝集成,为开发者提供灵活、高效的解决方案。 #### 前端:[VerEasy.Admin](https://gitee.com/zh1446802857/ver-easy-admin.git) ------------ ## 功能与进度 ### 框架模块 - [x] ⭐框架整体采用 **`仓储+服务+接口`**; - [x] ⭐接口主要采用异步形式 **`async/await`** - [x] ⭐采用国产开源ORM框架 **`SqlSugar`** - [ ] ⭐支持多库使用,可支持多种数据库([sqlsugar官网](https://www.donet5.com/Home/Doc "sqlsugar官网")) - [x] ⭐项目内置数据种子文件,项目启动初始化基础表和数据 - [x] ⭐Serilog日志记录功能 **`LogAop`** 全局自动记录,支持输出到 **本地文件,数据库,控制台** - [x] ⭐支持代码生成 **`1.实体生成表`** **`2.表生成实体`** **`3.表生成业务文件(仓储、服务、控制器)`** **`4.由数据库生成种子数据`** …… - [x] ⭐**支持一键生成你自己的项目** - [x] ⭐使用 SwaggerAPI 文档 - [x] ⭐使用 Automapper 做实体间映射 - [x] ⭐使用 AutoFac 做依赖注入容器,并支持批量注入(如多个AOP) - [x] ⭐支持 Cors 跨域处理 - [x] ⭐支持 JWT 授权鉴权处理 - [x] ⭐封装 **`GlobalException`** 全局异常过滤器 - [x] ⭐封装 **`Quartz`** 支持定时任务处理 - [x] ⭐整体采用 **`SnowflakeId`** 雪花ID - [x] ⭐实现了用户角色菜单权限分配 - [x] ⭐Redis缓存 - [x] ⭐Ip限流 ------------ ### 框架结构 > 整个框架追求的是易于扩展和使用,附有Vue3的前端项目,但整体不会牵连太深,方便和已有的前端项目进行集成。 若是要删除其中代码,也需要调整对应的引用等,无法避免。 ``` txt ├── VerEasy.Common/ 公共方法类(用于全局的通用方法) │ ├── FastCode/ 代码生成相关文件夹 │ ├── Helper/ 辅助方法文件夹 │ ├── LogHelper/ 用于输出控制台日志的拓展方法 │ ├── Utils/ 工具类(类似配置文件读取,雪花Id生成等) ├── VerEasy.Core.Api/ 接口层 │ ├── Controllers/ 控制器文件夹 │ ├── Filter/ 过滤器文件夹 │ ├── wwwroot/ 静态文件夹 ├── VerEasy.Core.IRepository/ 仓储接口层 │ ├── Base/ 基础增删改接口 │ ├── IRepository/ 基础方法满足不了,可扩展的仓储接口层 │ │ ├── IDepartmentRepository.cs ├── VerEasy.Core.IService/ 服务接口层(同上) │ ├── Base/ │ │ ├── IBaseService.cs │ ├── IService/ │ │ ├── IDepartmentService.cs ├── VerEasy.Core.Models/ Model层 │ ├── Base/ 统一的字段基础类(如Id,修改人,修改时间等) │ │ ├── BaseModel.cs │ ├── Dtos/ Dto层,用于封装返回统一的返回格式等 │ ├── Enums/ 枚举类文件夹(业务需要定义枚举,或者全局都会使用到的枚举) │ ├── ViewModels/ 实体文件夹(表结构对应的实体文件夹) ├── VerEasy.Core.Repository/ 仓储实现层(继承仓储接口层,并实现定义的接口,结构同上) │ ├── Base/ │ ├── Repository/ ├── VerEasy.Core.Service/ 服务实现层(继承服务接口层,并实现定义的接口,结构同上) │ ├── Base/ │ ├── Service/ ├── VerEasy.Core.Tasks/ Task定时任务类(封装了Quartz) │ ├── Quartz.Net/ Quartz相关文件夹(闲了扩展其他的) │ │ ├── IScheduleCenter.cs 调度器接口(启用调度器相关,例如执行job停止job) │ │ ├── JobFactory.cs Job工厂,继承官方的IJobFactory │ │ ├── JobListener Quartz监听器,监听定时任务的执行情况 │ │ ├── ScheduleCenter 调度器接口的实现 │ │ ├── Jobs/ 具体的定时任务文件夹 ├── VerEasy.Extensions/ 扩展类库(主要注入其他的服务) │ ├── Aop/ AOP文件夹 │ ├── Authorization/ 身份认证相关(Jwt) │ ├── HostedService/ 管理需要项目启动就执行的服务(如持久化Quartz) │ ├── ServiceExtensions/ 服务扩展文件夹(各种服务的注入配置) │ │ ├── HttpContext/ 防止开发不更新修改人修改时间等信息引入的自动获取登录信息 │ │ ├── Module/ 其他服务(如:mapper的映射关系配置) │ │ │ ├── MappingProfileModule.cs │ ├── ServiceMiddlewares/ 中间件管道文件夹 ├── VerEasy.Serilog/ 日志类库 │ ├── LoggerConfigurationExtensions.cs 日志的输出配置(输出到数据库或本地等,整体规范化一些) ``` ------------ ### 🚀 **持续开发中** 本项目仍在积极开发和维护中,未来会持续添加新功能和优化现有模块。 欢迎关注项目,了解最新动态!你的支持是我们前进的动力!✨ ### 如果你喜欢这个项目 如果你喜欢这个项目,请不要忘记为它点亮 ⭐Star! 你的支持是我们持续改进的最大动力!🎉 ------------ ### 参与贡献 如果你对这个项目有建议或改进的想法,欢迎提交 [Issue](#) 或 [Pull Request](#)!😊 我们非常期待你的加入,共同让这个项目更加强大!