[Feature] Generic Repository 및 UnitOfWork 패턴 구현 #18

Closed
opened 2026-02-09 05:41:32 +00:00 by seonkyu.kim · 0 comments
Owner

설명

Infrastructure 레이어에 Generic Repository와 UnitOfWork 패턴을 구현한다.
Issue #3에서 정의한 IRepository<T>, IUnitOfWork 인터페이스의 구현체를 작성한다.

체크리스트

  • SPMS.Infrastructure/Persistence/Repositories/Repository.cs — IRepository 구현
    • GetByIdAsync, GetAllAsync, FindAsync
    • GetPagedAsync (Skip/Take 페이징)
    • CountAsync, ExistsAsync
    • AddAsync, Update, Delete (Soft Delete 지원)
  • SPMS.Infrastructure/Persistence/UnitOfWork.cs — IUnitOfWork 구현
    • SaveChangesAsync
    • BeginTransactionAsync, CommitTransactionAsync, RollbackTransactionAsync
  • DI 등록 (AddScoped)
  • 빌드 성공 확인

참조

  • SPMS.Domain/Interfaces/IRepository.cs
  • SPMS.Domain/Interfaces/IUnitOfWork.cs
  • SPMS.Infrastructure/AppDbContext.cs
## 설명 Infrastructure 레이어에 Generic Repository와 UnitOfWork 패턴을 구현한다. Issue #3에서 정의한 `IRepository<T>`, `IUnitOfWork` 인터페이스의 구현체를 작성한다. ## 체크리스트 - [x] `SPMS.Infrastructure/Persistence/Repositories/Repository.cs` — IRepository<T> 구현 - GetByIdAsync, GetAllAsync, FindAsync - GetPagedAsync (Skip/Take 페이징) - CountAsync, ExistsAsync - AddAsync, Update, Delete (Soft Delete 지원) - [x] `SPMS.Infrastructure/Persistence/UnitOfWork.cs` — IUnitOfWork 구현 - SaveChangesAsync - BeginTransactionAsync, CommitTransactionAsync, RollbackTransactionAsync - [x] DI 등록 (AddScoped) - [x] 빌드 성공 확인 ## 참조 - `SPMS.Domain/Interfaces/IRepository.cs` - `SPMS.Domain/Interfaces/IUnitOfWork.cs` - `SPMS.Infrastructure/AppDbContext.cs`
seonkyu.kim added the
Priority
High
Status
Available
Type
Feature
labels 2026-02-09 05:41:43 +00:00
seonkyu.kim self-assigned this 2026-02-09 05:41:44 +00:00
seonkyu.kim added this to the Phase 1: 인프라 & 공통 모듈 milestone 2026-02-09 05:41:45 +00:00
seonkyu.kim added
Status
In Progress
and removed
Status
Available
labels 2026-02-09 05:45:45 +00:00
seonkyu.kim added
Status
Done
and removed
Status
In Progress
labels 2026-02-09 05:49:30 +00:00
Sign in to join this conversation.
No description provided.