Repository navigation
🎉v10.0.0
🚀 核心升级
- 全面升级至 .NET 10.0: 核心库(admin权限管理、dev代码生成器)以及 app、网关、im 服务端项目模板现已全面支持 .NET 10.0,助您利用最新的平台特性。
- 统一 JSON 序列化: 彻底告别
Newtonsoft.Json与System.Text.Json的混用,全系统统一使用高性能的System.Text.Json,提升了序列化效率与一致性。
✨ 新增特性
1. 开发工具与效率
- 新增在线代码生成器 (Dev) 项目: 提供了一个独立的在线开发-代码生成器项目,进一步提升快速开发能力。
- 集成
unplugin-auto-import插件: 自动导入 Vue 常用 API,无需手动引入,显著提升前端开发效率。 - 新增
env.config.js静态配置: 提供了中心化的静态环境配置。.env等动态环境文件可以指定覆盖其配置,同时保留其他未冲突的静态配置,使配置管理更灵活。
2. 前端组件库增强
- 新增
my-table表格组件:- 支持可配置化表头列。
- 轻松绑定表格数据源。
- 完整继承
el-table的所有属性。 - 支持通过插槽 (
slot) 配置自定义列模板。 - 内置强大分页功能,支持分页位置自定义,并继承
el-pagination属性。 - 自动计算分页数据,同时支持服务端和客户端两种分页模式。
- 新增
my-col-set.vue列设置组件: 内置列拖拽排序、置顶、左/右固定、恢复默认等实用功能,为用户提供个性化的表格视图。 - 新增
login/dialog.vue弹窗登录组件: 提供了新的登录交互方式。
3. 后端功能扩展
- 数据字典支持树形结构:
- 数据字典分类支持树形数据管理。
- 字典列表增加树形列展示。
- 实现了树形结构下的新增、查询、导入、导出功能。
- 根据编码和名称查询支持返回树形数据。
- 任务调度增强:
appsettings.json中的TaskSchedulerConfig增加Modules模块列表配置,支持配置模块的远程调用地址。- 报警邮件 (
AlarmEmail) 支持使用空格分隔多个邮件地址。
- 邮件服务: 邮件单发功能增加对是否需要身份验证的检查。
4. 用户体验与界面
- 新增网关项目标题与图标: 网关服务现在可以展示自定义标题和图标。
- 主题配置增强:
ThemeConfigState增加isMobile属性,用于适配移动端视图。 - 组件功能增强:
- 主题设置和日志详情抽屉支持调整大小。
splitter组件增加lazy模式。
⚡ 重要变更
- JSON 序列化迁移: 这是本次版本的一项重大变更。所有实体、远程调用、序列化方法均已从
Newtonsoft.Json迁移至System.Text.Json。升级时请确保检查所有自定义的 JSON 相关代码。 - 组件重构:
- 用户管理、角色管理等页面已将
el-table和el-pagination替换为功能更强大的MyTable组件。 - 多个管理页面不再使用
MySplitPanes组件,改用MySplitter组件。 - 移除了
my-select组件,统一使用el-select组件。
- 用户管理、角色管理等页面已将
- 用户状态与路由:
- 用户信息状态管理的清空方法不再使用
window刷新,改为通过路由导航到登录页,体验更流畅。 - 用户管理组件引用 (
ref) 统一更改为useTemplateRef,以获得更好的 TypeScript 类型推断。
- 用户信息状态管理的清空方法不再使用
- 代码生成与模板:
- 更新了
http-client.ejs请求客户端生成模板。 easyrun脚本现在支持dev项目。
- 更新了
🐛 问题修复
本次版本修复了众多问题,显著提升了系统的稳定性与可靠性,主要包括:
- 权限相关: 修复了角色设置数据权限和套餐权限后,未正确清理用户数据权限的问题;修复了用户拥有多个部门时的权限逻辑问题。
- 项目模板: 修复了 App 项目模板生成
sys项目时缺失滑块验证服务、未正确排除模块示例和ip2region.xdb引用、冗余代码等问题。 - 功能逻辑:
- 修复了空字符串日期无法映射到
DateTime?类型的问题。 - 修复了无 CAP 消息模块时无法记录操作日志的问题。
- 修复了表格查询组件中数字框默认值、高级查询异常等问题。
- 修复了 JWT 刷新失败无提示、多接口 Token 失效后返回多个提示信息的问题。
- 修复了 Admin 后台导入导出功能未正确处理数据字典树形数据的问题。
- 修复了空字符串日期无法映射到
🔧 优化与改进
- 性能优化:
- 优化了组件性能,弃用
InstanceType<typeof ElTable>写法,改用TableInstance,并统一使用useTemplateRef。 - 优化了 JWT 无感刷新机制。
- 优化了组件性能,弃用
- 用户体验优化:
- 优化了任务调度 Cron 表达式样式、抽屉组件页脚、打印设计、分隔面板等组件的视觉样式。
- 优化了数据字典类型与数据的联动效果。
- 优化了任务调度管理的 JSON 编辑器和任务日志抽屉,支持调整大小。
📦 依赖更新
- 前端: 更新 Admin 前端接口至最新版本,并升级所有 NPM 包到最新版本。
- 后端: 更新所有 NuGet 包到最新版本。
- 数据: 更新初始化数据 (
InitData/*) 至最新版本。
升级建议
在升级到 v10.0 时,请务必仔细阅读 【重要变更】 部分,特别是关于 JSON 序列化的迁移,这可能需要您对现有项目代码进行调整。建议在测试环境中充分验证后再部署到生产环境。