最新C#教程和.NET开发资源

写 EF Core 查询,90% 的人第一步就错了:刚子教你避开所有坑

2026-04-18 技术文章

本文介绍了EF Core 复杂查询几个核心技巧:关联查询用 Include + ThenInclude;动态筛选用表达式树或 PredicateBuilder;性能优化记住五条铁律——只读用 AsNoTracking,只取需要的字段用投影,N+1 问题用 Include,多集合用 AsSplitQuery,分页前必须排序。最重要的是,学会查看生成的 SQL,别把 EF Core 当黑盒。把 EF Core 当成带类型安全的 SQL 生成器,90% 的复杂查询场景你都能搞定。

阅读更多

序列化 JSON 时崩了?99% 是 EF 延迟加载惹的祸,三种解法拿走不谢

2026-04-18 技术文章

本文介绍了EF 默认开启延迟加载,查主表时不带明细,等你要用时才偷偷查数据库。如果此时 DbContext 已释放,就会报 ObjectDisposedException。解决方案有三:关掉延迟加载、用 Include/ThenInclude 提前加载、或用 DTO 投影。EF6 和 EF Core 的 Include 语法有差异,EF Core 的 ThenInclude 更直观。最佳实践:Web 应用全局关闭延迟加载,只读查询用 AsNoTracking,优先用 DTO。记住:在 DbContext 活着的时候,把需要的数据都显式加载好。

阅读更多