Bonjour,
Je me permets de vous contacter car je bute depuis plusieurs jours sur un problème qui dépasse clairement mes connaissances actuelles (et même celles de l’IA que j’utilise en complément).
Je suis en train de mettre en place une sorte de framework de base en C#, avec comme contrainte principale la possibilité de se connecter soit à SQLite, soit à MariaDB / MySQL. J’ai mis en place un système de settings qui permet de choisir dynamiquement le provider, et sur ce point le fonctionnement est globalement correct.
En revanche, je rencontre de gros problèmes avec les migrations EF Core. La gestion des clés primaires auto-incrémentées devient rapidement problématique :
si je génère une migration avec SQLite, celui-ci ne reconnaît plus correctement les INSERT sans ID explicite ;
et côté MySQL/MariaDB, la table n’est pas créée avec un AUTO_INCREMENT, ce qui empêche les insertions sans fournir manuellement l’ID.
Bref, dès que je tente de faire fonctionner les migrations pour les deux moteurs, cela devient assez chaotique, et c'est peu dire
Ma question est donc la suivante :
quelle est la manière propre de gérer les Add-Migration lorsqu’on doit supporter plusieurs moteurs de base de données ?
Plus généralement, je serais aussi intéressé par vos retours d’expérience :
comment gérez-vous les montées de version du schéma de base de données dans des applications déployées chez des clients ?
Pour préciser le contexte : je débute encore en C# et EF Core, donc il est possible que je m’y prenne simplement de la mauvaise manière.
Merci d’avance pour vos conseils.






Répondre avec citation

Partager