Tech Blog

Sharing .NET, Blazor, and full-stack development insights

5 articles Filtering by: Blazor CRUD
Original 2026-09-25 809

EasyAdminBlazor 表单开发实战:从简单 CRUD 到复杂业务表单

本文介绍 EasyAdminBlazor 的表单设计:不定义 EditTemplate 时,直接走 BootstrapBlazor 的自动表单生成;定义后则完全用自定义模板覆盖。文章讲解了弹窗底部按钮装配、EditContextCapture 校验机制、变更类型判定、保存不关闭等细节,并给出从简单表单到标签页分组、条件显示、大表单拆组件的实践方式,最后总结各关注点的职责划分。

Read More
Original 2026-09-23 777

Blazor Admin 高级查询实战:条件筛选、动态查询与关联数据

本文详解 AdminTable 查询条件的实现机制:从搜索框、列头筛选、高级搜索到自定义查询,四类入口数据分别收集至 QueryPageOptions 的不同字段。通过 ToDynamicFilter 方法统一翻译为 DynamicFilterInfo,其中模糊搜索用“或”逻辑,其余为“与”关系。操作符自动映射,支持 [Flags] 枚举的位运算筛选,并通过 IgnoreSearchColumns 避免导航属性误用。排序优先级明确,不覆盖原始 OrderBy,确保查询逻辑清晰可靠。

Read More
Original 2026-09-22 938

AdminTable 源码解析:EasyAdminBlazor 如何实现通用 CRUD?

EasyAdminBlazor 2.3.0 的 AdminTable 继承 BootstrapBlazor 的 Table<TItem>,通过 IAggregateRootRepository<TItem> 把查询接到 FreeSql。它做了四件事:查询接入(GetSelect + GetPagedAsync)、筛选排序翻译(ToDynamicFilter + ApplyOrder)、写路径服务端权限与数据权限校验(AuthButton + FilterAuthorizedAsync)、补齐导入导出/打印/草稿等后台刚需。核心价值是把重复的 CRUD 变成组件能力,一个实体加一个页面就是一个模块。

Read More
Original 2026-05-28 1008

三、几十行代码搞定CRUD:建好实体和菜单,页面自动生成

本文介绍如何使用EasyAdminBlazor快速生成后台管理模块,无需编写大量代码。传统开发一个"产品管理"模块需要半天时间完成数据库、前后端等多项工作,而使用EasyAdminBlazor只需四步:1)创建继承EntityFull的实体类并添加注解;2)在后台添加菜单;3)一键生成页面代码;4)刷新即可获得

Read More