ASP.NET Core 过滤器实战:操作日志记录与异步日志机制 在 ASP.NET Core 项目中,过滤器(Filter)是实现横切关注点的核心机制。本文基于 SwitchData.Api 项目的真实代码,深入剖析 ApiDbLoggingActionFilter 的实现原理,讲解异步过滤器的生命周期、敏感参数脱敏、多类型出参智能捕获、ExpandoObject 动态截断以及 fire-and-forget 异步日志写入等高级技巧。 .NET 9 0 0 2026-08-22
ASP.NET Core 请求日志中间件实战:基于 Stopwatch 的性能监控与异常追踪 本文从 SwitchData 项目提取 DisplayLoggingMiddleware,讲解如何在 ASP.NET Core 中手写请求日志中间件,实现接口耗时统计、状态码分级日志与异常追踪。通过 Endpoint 元数据读取菜单名称、Stopwatch 精确计时、静态文件过滤等技巧,不到 70 行代码即可构建生产级请求监控能力。 基础设施 6 0 0 2026-08-21
Mapster 高级映射实战:AfterMapping、条件映射与树形数据转换 本文从 SwitchData 项目提取三个真实场景,深入讲解 Mapster 的 AfterMapping 后映射钩子、Map 条件映射和 MapWith 自定义映射函数,最后展示如何将扁平数据一键转为树形结构。三种映射方式各有定位:Map 处理属性级类型转换,AfterMapping 处理对象级后置逻辑,MapWith 处理结构级整体变换。 .NET 8 0 0 2026-08-20
表达式树解析:从 LINQ 到 SQL 的迷你 ORM 实现 深入 C# 表达式树(Expression Tree)的解析原理,使用 ExpressionVisitor 模式从零实现一个迷你版 LINQ-to-SQL 方案,包括元数据映射、条件解析、排序解析、动态 PredicateBuilder 组合,以及编译表达式树生成高性能访问器的完整实战。 .NET 26 0 0 2026-08-19
从 LINQ 到 SQL:自定义 ExpressionVisitor 实现动态查询条件解析器 本文通过手写 ExpressionVisitor 实现 LINQ 表达式树到 SQL 查询条件的完整转换链路,涵盖排序解析、条件构建、逻辑分组、闭包变量提取等核心技术点。 .NET 13 0 0 2026-08-18