con un clic
net-repository-pattern
Implement repository pattern with Unit of Work for EF Core
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
Implement repository pattern with Unit of Work for EF Core
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Basado en la clasificación ocupacional SOC
Implement agile development practices and ceremonies for .NET projects
Automate Work Item -> Branch -> PR -> Evidence Pack for AI Coding Factory
Implement Scrum framework and team structures for .NET enterprise projects
Implement CQRS pattern with MediatR for .NET applications
Create Docker configuration for ASP.NET Core applications
Create domain models following Domain-Driven Design principles
| name | net-repository-pattern |
| description | Implement repository pattern with Unit of Work for EF Core |
| license | MIT |
| compatibility | opencode |
| metadata | {"audience":".net-developers","framework":"entityframeworkcore","patterns":"repository"} |
I implement repository pattern with Unit of Work:
Use this skill when:
src/{ProjectName}.Infrastructure/Data/
├── DbContext/
│ ├── AppDbContext.cs
│ └── ApplicationDbContextFactory.cs
├── Repositories/
│ ├── Base/
│ │ ├── Repository.cs
│ │ └── ReadOnlyRepository.cs
│ ├── ProductRepository.cs
│ ├── OrderRepository.cs
│ └── UserRepository.cs
├── UnitOfWork/
│ ├── IUnitOfWork.cs
│ └── UnitOfWork.cs
├── Specifications/
│ ├── ISpecification.cs
│ └── SpecificationEvaluator.cs
└── Migrations/
public interface IRepository<TEntity>
where TEntity : Entity
{
Task<TEntity?> GetByIdAsync(Guid id);
Task<IReadOnlyList<TEntity>> GetAllAsync();
Task<IReadOnlyList<TEntity>> ListAsync(
ISpecification<TEntity> spec);
Task<TEntity?> GetEntityWithSpec(ISpecification<TEntity> spec);
Task<int> CountAsync(ISpecification<TEntity> spec);
void Add(TEntity entity);
void Update(TEntity entity);
void Delete(TEntity entity);
}
public interface IUnitOfWork : IDisposable
{
IProductRepository Products { get; }
IOrderRepository Orders { get; }
IUserRepository Users { get; }
Task<int> CompleteAsync();
Task RollbackAsync();
}
public interface ISpecification<T>
{
Expression<Func<T, bool>> Criteria { get; }
List<Expression<Func<T, object>>> Includes { get; }
string IncludeString { get; }
Expression<Func<T, object>> OrderBy { get; }
Expression<Func<T, object>> OrderByDescending { get; }
}
Create repository implementation for:
- Product aggregate
- Order aggregate
- Customer aggregate
With Unit of Work pattern
I will generate complete repository implementation with EF Core.