一键导入
ef-core
EF Core 操作與最佳化技能,協助開發者正確使用 Entity Framework Core,包含 DbContextFactory 模式、查詢最佳化、Migration 管理與反向工程。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
EF Core 操作與最佳化技能,協助開發者正確使用 Entity Framework Core,包含 DbContextFactory 模式、查詢最佳化、Migration 管理與反向工程。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
API 開發流程引導技能,協助開發者選擇合適的開發流程(API First 或 Code First),並提供 OpenAPI 規格管理、程式碼產生等自動化支援。
BDD 測試實作技能,協助開發者使用 Reqnroll 撰寫行為驅動開發測試,包含 Gherkin 語法、測試步驟實作與 Docker 測試環境設定。
快取策略與多層快取設計技能,協助開發者實作 L1 Memory + L2 Redis 分層快取,包含 TTL 管理、版本控制與失效策略。
專案初始化與配置技能,負責引導使用者完成新專案的初始化、配置設定、GitHub 範本套用與專案狀態檢測。
Repository 設計指導技能,協助開發者根據業務需求選擇最合適的 Repository 設計策略(資料表導向 vs 需求導向 vs 混合模式)。
GitHub Copilot Skill 與 Agent 設計指導技能,協助開發者設計與實作高品質的 Skill 和 Agent,包含架構設計、最佳實踐、工作流程規劃與常見反模式識別。
| name | ef-core |
| description | EF Core 操作與最佳化技能,協助開發者正確使用 Entity Framework Core,包含 DbContextFactory 模式、查詢最佳化、Migration 管理與反向工程。 |
本 SKILL 須搭配閱讀:開發規則
EF Core 操作與最佳化技能,協助開發者正確使用 Entity Framework Core,包含 DbContextFactory 模式、查詢最佳化、Migration 管理等。
Entity Framework Core 是資料存取基礎設施,不受「API First vs Code First」選擇影響:
因此本 SKILL 未區分 API 開發流程,所有 EF Core 實作指導均適用於兩種方式。
👉 API 開發流程選擇 → 參考 /api-development SKILL
// ✅ 正確:使用 Factory 模式
public class Repository(IDbContextFactory<JobBankDbContext> dbContextFactory)
{
public async Task<Result> OperationAsync(CancellationToken ct)
{
await using var dbContext = await dbContextFactory.CreateDbContextAsync(ct);
// 使用 dbContext
}
}
// ❌ 錯誤:直接注入 DbContext
public class Repository(JobBankDbContext dbContext) // 生命週期問題
# 建立 Migration
task ef-migration-add NAME=AddMemberTable
# 更新資料庫
task ef-database-update
# 反向工程
task ef-codegen
await using var transaction = await dbContext.Database.BeginTransactionAsync(ct);
try
{
// 操作
await transaction.CommitAsync(ct);
}
catch
{
await transaction.RollbackAsync(ct);
throw;
}
開發者應參考專案內的實際代碼:
DbContextFactory 使用範例:
node .claude/skills/shared/FileResolver.js get-content \
src/JobBank1111.Job.DB/JobBankDbContextFactory.cs
Repository 實作範例:
node .claude/skills/shared/FileResolver.js get-content \
src/JobBank1111.Job.DB/Repositories/MemberRepository.cs