用途:该技能面向 Entity Framework Core(EF Core)开发,在用户需要数据库建模、编写 LINQ 查询或处理数据库迁移时触发;当项目包含 DbContext 类或引用 Microsoft.EntityFrameworkCore 包,或需要优化数据库访问性能、解决 N+1 查询问题、设计复杂数据关系(一对多、多对多、继承映射)时同样适用。
主要能力:工作流分为感知、规划、执行、验证四步。感知阶段检查 .csproj 确认 EF Core 版本与数据库提供程序,分析 DbContext 与实体配置是否采用 Fluent API,识别迁移状态。规划阶段评估查询是否需要 .AsNoTracking() 或 .AsSplitQuery(),判断是否需要自定义拦截器处理审计字段,评估是否使用 ExecuteUpdate/Delete(.NET 7+)进行大批量更新。执行阶段编写高效安全的 LINQ 查询、实现 IEntityTypeConfiguration 配置类、创建并执行迁移命令。验证阶段检查生成的 SQL 是否避免全表扫描、验证并发冲突处理逻辑、确保数据库访问遵循异步模式。
版本路线图:.NET 6 与 7 提供拆分查询、批量操作、JSON 列、编译模型;.NET 8 与 9 提供基元集合、HierarchyId、自动编译查询、复杂类型;.NET 10+ 提供高级拦截器、优化的 AOT 支持。
编码规范:优先使用 Fluent API 而非数据注解;所有 I/O 操作必须异步;只读查询始终使用 .AsNoTracking();实体名对应表名,外键名语义清晰。
交付物:优化后的 LINQ 查询、迁移脚本与指导、数据库架构设计。
限制:资料未提供具体安装命令、收费方式或平台信息;实际使用需结合项目自身的 EF Core 版本与数据库提供程序。