Posts
All the articles I've posted.
-
IHostedService vs BackgroundService:.NET 10 后台任务选哪个
Published: at 11:21 PMBackgroundService 覆盖 .NET 后台任务 99% 的场景,但有 5 个生产坑会让你在凌晨 3 点接到警报。本文对比两种抽象的核心差异,逐一拆解常见陷阱,并附决策矩阵帮你判断何时该升级到 Hangfire 或 Quartz.NET。
-
EF Core 10 大性能陷阱(以及如何修复)
Published: at 01:40 AM开发环境测试通过、生产环境响应爆炸——这 10 个 EF Core 查询模式问题会在真实流量下把接口拖垮。每个问题都有 .NET 10 下的具体修复代码。
-
.NET 6 到 .NET 10:LINQ 新增的 15 个方法,一文搞清楚
Published: at 11:54 PM从 .NET 6 到 .NET 10,LINQ 陆续增加了 15 个方法——Chunk、MinBy、CountBy、AggregateBy、Index、LeftJoin 等,这篇文章逐一介绍它们解决了什么问题,以及如何在实际代码中替换掉过去的样板写法。
-
pgvector + .NET 实战:用 PostgreSQL 做向量搜索
Published: at 10:58 AM已有 PostgreSQL?不用再部署 Pinecone 或 Qdrant。pgvector 是一个 PostgreSQL 扩展,让你直接在现有数据库里存储向量并做语义搜索。本文带你用 .NET Aspire、Dapper 和 Microsoft.Extensions.AI 跑通完整流程:启用扩展、创建向量列、生成 embedding、用余弦距离做相似性查询。
-
别再用 DateTime.Now:用 TimeProvider 让 .NET 代码可测试
Published: at 09:13 AM几乎每个 .NET 项目都有同一个隐患:DateTime.Now 散落在服务、验证器和业务规则里。表面无害,实际上让时间相关逻辑无法正确测试。本文介绍两种解决方案——自定义 IDateTimeProvider 接口和 .NET 8 内置的 TimeProvider——让时间成为可注入的依赖,配合 FakeTimeProvider 轻松测试订阅到期、试用结束等真实场景。
-
.NET 项目必加的 5 类架构测试
Published: at 09:03 AM架构规则写在文档里,六个月后就会被违反。本文介绍用 ArchUnitNET 把层依赖、命名规范、类共位、可见性和第三方库边界这 5 类约定写成自动化测试,让 CI 来守护你的架构意图,而不是靠 Code Review 碰运气。
-
GitHub Copilot 的编码套件:VS Code 里 AI 真正在做什么
Published: at 08:52 AM每次新模型发布,大家都在问哪个更聪明、更快。但在 VS Code 里,模型只是其中一层。真正决定你体验的是 coding harness——负责组装上下文、暴露工具、驱动 agent 循环的系统层。这篇文章来自 VS Code 团队,解释了这套机制是怎么工作的,不同模型为何需要不同配置,以及他们如何用 VSC-Bench 在模型上线前做产品级评测。
-
用 Redis Backplane 横向扩展 SignalR:消息路由、粘性会话与故障边界
Published: at 08:36 AMSignalR 横向扩展后,每个实例只知道自己的连接,消息很容易发不到目标客户端。本文用 Redis backplane 串起多实例消息路由,并讲清楚 sticky sessions、ChannelPrefix、Redis 故障丢消息和 Azure SignalR Service 的取舍。