news 2026/8/26 15:05:53

YiShaAdmin 权限管理系统部署指南:4 个高频卡点一次打通

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
YiShaAdmin 权限管理系统部署指南:4 个高频卡点一次打通

YiShaAdmin 权限管理系统部署指南:4 个高频卡点一次打通

【免费下载链接】YiShaAdmin基于 .NET Core MVC 的权限管理系统,代码易读易懂、界面简洁美观项目地址: https://gitcode.com/GitHub_Trending/yi/YiShaAdmin

YiShaAdmin 是一个基于 .NET Core MVC 的开源权限管理系统,内置员工管理、部门组织、角色权限、菜单配置和定时任务等模块,适合用来快速搭建网站后台、OA、CRM 这类系统的底座。这篇文章围绕 YiShaAdmin 部署 展开,带你走完环境准备、数据库初始化、登录排障到权限配置的完整流程,第一次接触这个项目的同学照着做就能把系统跑起来。

动手前,先确认这 5 项

  • .NET SDK 与项目匹配:默认分支基于 .NET Core 3.1,仓库同时提供 7.0 / 6.0 / 2.2 分支,按需选择
  • MySQL 或 SQL Server 数据库服务正在运行
  • 代码已克隆到本地:git clone https://gitcode.com/GitHub_Trending/yi/YiShaAdmin
  • 数据库连接字符串已按本机账号密码改好
  • 5000(Web)、5001(Api)端口未被其他程序占用

清单里的每一项花不了几分钟,但能避开后面绝大多数坑,建议真的逐项过一遍再启动。

启动项目:版本报错和端口占用的快速处理

代码克隆下来后,在 Web 项目目录执行dotnet restore,再dotnet run就能看到效果。如果卡住了,多数是下面两种情况。

SDK 版本对不上

启动时提示找不到运行时或版本不匹配,大概率是本机装的 .NET SDK 和项目要求的不一致。先执行dotnet --list-sdks看看本地都有什么版本;如果你用的是 3.1 默认分支,就装一个 3.1 的 SDK,或者干脆切到 7.0 / 6.0 分支,装对应的新版本即可。💡 团队开发时建议在仓库根目录放一个 global.json 锁定 SDK 版本,省得每个人环境都不一样。

端口被占用

启动日志里出现端口已被占用的提示时,说明 5000 或 5001 已经有程序在用。最简单的办法是改端口:打开 YiSha.Web/YiSha.Admin.Web/Properties/launchSettings.json,把 applicationUrl 里的端口换成空闲的再启动。

数据库连不上:登录页卡住的排查路径

登录时报数据库相关错误

看到登录页提示数据库连接失败、或者应用启动即退出,先别怀疑代码,顺手检查一下配置文件:打开 YiSha.Web/YiSha.Admin.Web/appsettings.json,确认 SystemConfig 里的 DBProvider(SqlServer 或 MySql)和 DBConnectionString 跟你本机的数据库类型、账号密码一致,这是新手最容易写错的一处。

确认配置没问题后,检查数据库本身建好了没有。进入 Document/DatabaseScript/ 目录,按数据库类型执行对应的脚本(MySQL 执行 mysql.sql 和 mysql_data.sql,SQL Server 执行 sqlserver.sql 和 sqlserver_data.sql),库表结构和初始数据就都有了。💡 开发环境可以先用简单密码验证连通性,跑通之后再换成强密码;⚠️ 生产环境切记不要用默认密码。

登录后菜单为空:权限配置的三步修复

菜单空白或按钮点不动

登录成功了,但左侧菜单栏是空的,或者部分按钮是灰的,说明数据层面或权限层面有缺口。建议按这个顺序查:先确认菜单数据已导入,没有的话重新执行一遍初始化数据脚本;再进入"系统管理 → 角色管理",给"管理员"角色把菜单权限全部勾上保存。

还差最后一步:进入"单位组织 → 员工管理",找到你自己的账号点"编辑",在角色栏勾选"管理员",保存后重新登录,菜单就会正常加载出来。

⚠️ 这个系统的权限控制精确到按钮级别,某个按钮不可用时,多半是该按钮的权限标识没分配给当前角色,回角色管理里补勾一下即可。

定时任务没动静:按这个顺序检查

配了定时任务却从未执行、执行日志一片空白时,先看任务状态是不是"启用",再核对 Cron 表达式(六段式,比如0 0/5 * * * ?表示每 5 分钟一次)。表达式没问题的话,确认服务器系统时间没有跑偏。💡 建议先建一个"每分钟执行一次"的简单测试任务,验证调度本身正常后,再替换成正式的业务任务,排障思路会清晰很多。

任务逻辑集中在 YiSha.Business/YiSha.Business.AutoJob/ 模块,如果测试任务依然不跑,重启一次 Web 服务再观察"下次执行时间"有没有更新,基本就能定位到是表达式、状态还是服务本身的问题。

进阶配置与故障速查

跑通之后,这几个开关可以按需打开,都是配置文件里的一两行改动。

缓存、连接池与多环境

  • Redis 缓存:把 appsettings.json 里的 CacheProvider 改为 Redis 并填上 RedisConnectionString,生产环境比默认的内存缓存更稳。
  • 连接池:在数据库连接字符串末尾追加Pooling=true;Min Pool Size=5;Max Pool Size=100;,减少频繁建连的开销。
  • 多环境配置:分别建 appsettings.Development.json 和 appsettings.Production.json,用 ASPNETCORE_ENVIRONMENT 环境变量切换,开发生产互不干扰。

症状速查表

症状首查项备选方案
启动报 SDK 版本错误dotnet --list-sdks的输出版本安装匹配 SDK 或切换对应版本分支
登录页报数据库连接失败appsettings.json 的 DBConnectionString重新执行 Document/DatabaseScript/ 下的初始化脚本
登录后菜单空白菜单数据是否导入、角色权限是否勾选编辑本人账号重新分配"管理员"角色
定时任务不执行任务状态与 Cron 表达式先建"每分钟执行"的测试任务验证调度
高并发下页面变慢CacheProvider 配置切换 Redis 并追加连接池参数

登录进去看到框架介绍页的那一刻,YiShaAdmin 就算真正跑起来了,后面的定制都在这套骨架上生长。

【免费下载链接】YiShaAdmin基于 .NET Core MVC 的权限管理系统,代码易读易懂、界面简洁美观项目地址: https://gitcode.com/GitHub_Trending/yi/YiShaAdmin

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/26 15:05:44

产品教程|Memmy 如何接续任务查询,并处理本地检索超时

本文经 AI 创作者 Berryxia.AI 授权,根据其实际测试过程整理与改写。 SalesScout 是 Barry 的本地项目,文中的文件名称、查询条件和返回结果来自他的设备和真实项目案例。 Memmy 是运行在本地的个人 AI Agent,同时也是多个 Agent 共用的个人记…

作者头像 李华
网站建设 2026/8/26 15:05:30

EasyMocap 实时 3D 可视化 3 步跑通

EasyMocap 实时 3D 可视化 3 步跑通 【免费下载链接】EasyMocap Make human motion capture easier. 项目地址: https://gitcode.com/gh_mirrors/ea/EasyMocap 算完几百帧姿态,还得翻 json 逐帧核对?EasyMocap 的实时 3D 可视化把关键点直接送进…

作者头像 李华
网站建设 2026/8/26 15:02:33

中医药装备数字化浪潮:工业煎药自动化系统技术趋势与工程挑战

随着智慧中药房、集中代煎中心大规模落地,中药煎药已经从传统人工煎煮,转向以PLC工艺控制、上位机监控、全链路追溯为核心的自动化模式。政策层面《医疗机构中药煎药室管理规范》对煎煮过程留痕、批次追溯提出硬性要求,倒逼行业软硬件体系快速…

作者头像 李华