Mapster 对象映射实战:从简单映射到复杂树形结构转换 Mapster 是 .NET 生态中高性能的对象映射库。本文以 SwitchData 项目为例,讲解 Mapster 的集中式配置、字段映射、AfterMapping 后处理、MapWith 自定义转换等核心用法,并演示如何将扁平列表映射为前端所需的树形结构。 .NET 4 0 0 2026-08-26
ASP.NET Core 权限过滤器实战:默认拒绝 + IFilterProvider 顺序控制 本文从 SwitchData 项目提取一套轻量级权限方案:通过 NoPermissionAttribute 实现控制器默认拒绝,PermissionAttribute 完成方法级权限码校验,再用自定义 IFilterProvider 精确控制过滤器执行顺序,适合按钮级、动态变化的细粒度权限场景。 .NET 5 0 0 2026-08-24
从零构建 ADO.NET 抽象层:参数缓存、Schema 缓存与数据类型映射完整实现 本文基于实际项目源码,详细讲解如何从零构建一套完整的 ADO.NET 数据库抽象层。通过 Database 基类封装通用数据库操作,使用 ParameterCache 和 SchemaCache 实现参数与元数据缓存,提供 CLR 类型到 DbType 的自动映射,支持批量操作和异步调用。这套抽象层已在生产环境中运行良好,显著提升了数据库访问的性能和代码可维护性。 数据库 2 0 0 2026-08-23
ASP.NET Core 过滤器实战:操作日志记录与异步日志机制 在 ASP.NET Core 项目中,过滤器(Filter)是实现横切关注点的核心机制。本文基于 SwitchData.Api 项目的真实代码,深入剖析 ApiDbLoggingActionFilter 的实现原理,讲解异步过滤器的生命周期、敏感参数脱敏、多类型出参智能捕获、ExpandoObject 动态截断以及 fire-and-forget 异步日志写入等高级技巧。 .NET 4 0 0 2026-08-22
ASP.NET Core 请求日志中间件实战:基于 Stopwatch 的性能监控与异常追踪 本文从 SwitchData 项目提取 DisplayLoggingMiddleware,讲解如何在 ASP.NET Core 中手写请求日志中间件,实现接口耗时统计、状态码分级日志与异常追踪。通过 Endpoint 元数据读取菜单名称、Stopwatch 精确计时、静态文件过滤等技巧,不到 70 行代码即可构建生产级请求监控能力。 基础设施 3 0 0 2026-08-21