以下插件并不是架构,而是扩展插件,但在项目中使用足以支持大部分项目的开发。且能减少不少的工作量。
🥥 框架包
如果您不想一个一个的引用,那么可以直接引用XUCore.All来直接使用所有包
名称 | 下载 | 版本 | 描述 | |
---|---|---|---|---|
XUCore.All | XUCore 组件包大集合 |
🥥 框架描述
🍄 框架脚手架
如何使用脚手架
所有脚手架在模板中默认形态是支持 WebApi(因为目前都是前后端分离),但是底层是相通的,所以只需自行创建对应的 web 工程即可。
建议使用,基于 FreeSql 的简单分层应用(动态 API+业务+FreeSql 的数据层),缩减了 Controller,独立业务,数据持久化
建议使用,基于 FreeSql 的单层应用(动态 API+业务+FreeSql 的结合),缩减了开发时间
Web Razor 模板(Mvc/Api,底层相通)融合了微信公众号、微信小程序、微信支付模块
功能概览
XUCore
- 基础类型的扩展以及各种 Helper 操作类(内容太多,主要在 Base 目录下)
- 缓存,IMemoryCache 的管理
- 集合封装,二叉树、优先级队列等集合操作
- Config 封装,XML 配置以及 json 配置
- 连接池
- 工具类,控制台进度条、代码性能、运行时间、流量控制、重试、单元测试等
- 绘图工具,Image 的扩展包括对图片的灰度处理、图片压缩、切图缩放、图片验证码等
- Id 生成器,包括 Guid(有序 Guid,二进制、字符串、末位排序等)、雪花、时间戳
- 分页插件以及分页扩展,Web 页码生成器、PagedList、PagedModel、PagedTools 等
- 队列
- 随机数生成器
- 序列化组件。JSON、MessagePack、转换器
- 线程锁,同步锁、异步锁
- 时间扩展以及范围操作
- WebClient、Cookie、Url 构造器
XUCore.Excel
- Excel 大文件读取操作,已经针对内存进行了优化。有效控制内存溢出问题
XUCore.Script
- 动态执行 JS 脚本语言库,有效的执行动态公式等操作。具体自行设计程序。
XUCore.NetCore
- AccessControl,资源权限管理
- Authorization、Jwt 权限
- Ddd、Ddd Domain 模式公用库
- Dependency、生命周期扫描器(Scoped、Singleton、Transient)
- DynamicWebApi、动态 Api(减少 Controller 的开发)
- EasyQuartz、Quartz 封装(简化计划任务的操作)
- Filters、过滤器封装
- RestFul、Api 输出数据规范和控制(支持 MessagePack,支持由客户端决定大小写等数据格式以及输出内容)
- HttpFactory、HttpFactory 封装(非注解方式)
- Middlewares、部分常用中间件(真实 IP、跨域、IP 控制)
- Oss、Oss 上传和大文件上传
- Razors 静态化处理
- Signature、Api 安全签名
- Swagger 封装(包括 Swagger 登录)
- Uploads、上传组件(图片、文件、Base64)
- Api RestFull 规范
XUCore.NetCore.Data
- 基于 EFCore 的数据仓储服务
XUCore.NetCore.FreeSql
- 基于 FreeSql 的数据仓储服务,Curd基础操作,以及配合动态API直接生成API
XUCore.NetCore.Mongo
- 基于 Mongo 的数据仓储服务
XUCore.NetCore.Redis
- 基于 Redis 的数据仓储服务
XUCore.NetCore.AspectCore
- 基于 Aspect 的 AOP 插件扩展,主要包含缓存的主动和被动处理