Skip to content

feat(phase9-efcore): intégrer Entity Framework Core avec SQLite#5

Merged
MGNetworking merged 2 commits into
developfrom
feature/phase9-efcore
Apr 15, 2026
Merged

feat(phase9-efcore): intégrer Entity Framework Core avec SQLite#5
MGNetworking merged 2 commits into
developfrom
feature/phase9-efcore

Conversation

@MGNetworking

Copy link
Copy Markdown
Owner

TLDR

Intégration d'Entity Framework Core avec SQLite pour remplacer la liste statique en mémoire. Inclut la configuration DDD-friendly, la migration initiale et les tests d'intégration du repository.


Type

Feature

Description

Phase 9 du curriculum pédagogique ASP.NET Core. L'objectif est de connecter l'API à une vraie base de données SQLite via EF Core, tout en conservant l'architecture DDD (Value Object TaskTitle mappé via ValueConverter).

Changements techniques

  • AppDbContext + TaskItemConfiguration (ValueConverter TaskTitlestring)
  • AppDbContextFactory pour les outils de migration CLI
  • TaskRepository réécrit avec EF Core (suppression de la liste statique)
  • Program.cs : enregistrement AddDbContext + Migrate() au démarrage
  • TaskSeeder pour les données initiales Postman
  • Migration InitialCreate générée
  • .gitignore mis à jour (*.db, *.db-shm, *.db-wal)
  • README.md mis à jour (stack, dépendances, commandes migrations)
  • docs/reference/efcore-setup.md — guide complet EF Core

Tests

  • Tests d'intégration TaskRepositoryTests avec SQLite in-memory (tous passants)
  • EnsureCreated() pour recréer le schéma à chaque test sans migrations

Checklist

  • Le code respecte les conventions du projet (DDD, couches Architecture)
  • Value Object TaskTitle préservé dans le domaine
  • Migrations générées et vérifiées
  • ITaskRepository toujours respectée (pas de fuite EF Core dans le domaine)

🤖 Generated with Claude Code

Co-Authored-By: Claude noreply@anthropic.com

- Ajouter AppDbContext, TaskItemConfiguration (ValueConverter TaskTitle)
- Réécrire TaskRepository avec EF Core (suppression liste statique)
- Générer la migration InitialCreate et configurer Program.cs
- Ajouter TaskSeeder pour les données initiales Postman
- Écrire les tests d'intégration du repository avec SQLite in-memory
- Documenter la configuration EF Core dans docs/reference/

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@MGNetworking MGNetworking added the enhancement New feature or request label Apr 15, 2026
- Déplacer TaskItemConfiguration vers Infrastructure/Persistence/Configurations/
- Mettre à jour le namespace en tasks.Infrastructure.Persistence.Configurations
- Supprimer l'import inutile System.Reflection.Emit
- Externaliser la chaîne de connexion SQLite dans appsettings.json

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@MGNetworking MGNetworking merged commit cff0e86 into develop Apr 15, 2026
1 check passed
@MGNetworking MGNetworking deleted the feature/phase9-efcore branch April 15, 2026 12:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant