摘要: 站内消息看起来只是"服务器推一条消息给前端",真正落地时要回答三个问题: 怎么保证用户只能收到自己的消息? 用户离线时消息去哪了? 多实例部署时推送怎么到达正确的连接? 这篇用 EasyAdminBlazor 的 NotificationHub 逐个回答。 一、整体链路 业务代码(审批提交、文件通知 阅读全文
posted @ 2026-10-03 09:40 EasyAdminBlazor 阅读(4) 评论(0) 推荐(0)
摘要: 前一篇文章讲并发:两个人同时审批只有一个能成功。 这一篇讲更隐蔽的问题:一次审批要写好几处数据,如果写到一半失败会怎样? 一、一次审批到底要写多少地方 以"同意"为例,一次操作涉及: 1. 更新业务表:ApprovalStatus + CurrentLevel 2. 更新审批记录:当前节点标记为已同 阅读全文
posted @ 2026-10-02 09:26 EasyAdminBlazor 阅读(9) 评论(0) 推荐(0)
摘要: 审批是 2.3 新增的重要能力。这篇文章不讨论"要不要上工作流引擎",只讲一件事:用状态机 + 审批记录表,把固定 2~3 级审批做扎实,以及怎么在半小时内把它接进一个已经有了 AdminTable 的模块。 一、先划清边界 这个模块的定位在源码注释里写得很清楚: 轻量多级审批:状态机(状态存放在业 阅读全文
posted @ 2026-10-01 09:42 EasyAdminBlazor 阅读(7) 评论(0) 推荐(0)
摘要: 上一篇讲了数据库是怎么隔离的。这一篇讲一个更容易被忽略的事实:数据库隔离 ≠ 整个系统天然隔离。 一、问题出在哪 EasyAdminBlazor 有两条缓存通道: 通道 实现 作用域 ICacheService 默认 MemoryCacheService(进程内 IMemoryCache) 单进程, 阅读全文
posted @ 2026-09-30 07:38 EasyAdminBlazor 阅读(3) 评论(0) 推荐(0)
摘要: 上一篇讲了"为什么用独立数据库"。独立数据库带来一个必须解决的问题:新客户开进来的时候,谁来给他建表、建管理员、分配菜单? 答案就在 AddEasyAdminBlazorMultiTenant() 到租户第一次登录之间那几百行代码里。 一、从"点保存"到"能登录",中间发生了什么 管理员在 多租户 阅读全文
posted @ 2026-09-30 07:33 EasyAdminBlazor 阅读(4) 评论(0) 推荐(0)
摘要: 已发布的《多租户架构——SaaS 系统的核心能力》讲的是"什么是多租户"。这篇进入实现层:租户怎么被识别、数据库怎么被切过去、为什么 EasyAdminBlazor 选择独立数据库而不是 TenantId 行级隔离。 一、三种隔离方案,先摆在一起比 做 SaaS 后台,多租户数据隔离绕不开三条路: 阅读全文
posted @ 2026-09-29 07:29 EasyAdminBlazor 阅读(4) 评论(0) 推荐(0)
摘要: 已发布的《第十篇:电子元件管理实战——Excel 导入导出》讲的是"怎么导入"。这篇往前一步,讲导入这条链路里的四个工程问题:列名怎么映射、数据怎么验证、权限怎么控、事务怎么保证。 一、导入的完整链路 点击"导入"按钮(ShowImportButton) ↓ AuthButton("add") 决定 阅读全文
posted @ 2026-09-29 07:21 EasyAdminBlazor 阅读(4) 评论(0) 推荐(0)
摘要: 后台里有一个很常见的需求:给一个图片地址,让服务器把它下载下来存到本地。采集文章配图、导入商品图、批量替换外链图片,都会用到。 这个功能看起来很无害,实际上它是 SSRF 的经典入口。这篇文章用 EasyAdminBlazor 2.3 的实现,完整讲一遍"一个安全的远程下载器应该长什么样"。 一、S 阅读全文
posted @ 2026-09-28 07:39 EasyAdminBlazor 阅读(4) 评论(0) 推荐(0)
摘要: 已发布的第八篇讲的是文件管理的功能(上传、预览、压缩、WebP)。这一篇把镜头拉近,看一次上传从浏览器到磁盘、再到数据库,中间过了几道关。 一、全景链路 AdminFileInput / FilePicker(选文件) ↓ FileService.UploadFileAsync(UploadFile 阅读全文
posted @ 2026-09-28 07:37 EasyAdminBlazor 阅读(4) 评论(0) 推荐(0)
摘要: 已发布的《企业后台权限设计:数据权限和角色权限的区别有多大?》讲的是概念。这篇讲实现:ApplyDataPermission 到底生成了什么条件,为什么只做查询过滤是不够的,以及导入 Excel 时那条最容易被忽略的越权路径是怎么被堵上的。 一、先分清两个问题 功能权限回答的是:你能不能打开这个页面 阅读全文
posted @ 2026-09-27 07:28 EasyAdminBlazor 阅读(4) 评论(0) 推荐(0)