J'utilise C# Entity Framework 6 et j'ai une base de données avec plusieurs schémas, dans ces schémas j'ai des tables avec les mêmes noms. Par exemple:C# Entity Framework 6 - Comment gérer plusieurs schémas ayant les mêmes noms de tables
- Rates.Hotel
- Availability.Hotel
J'ai un seul projet pour tous mes objets de base de données avec cette structure:
Project Name = Storm.API.Data
In this project I have folders with the schema names: "Availability", "Rates".
In each folder I have the proper 'edmx' file.
Quand je lance mon projet J'obtiens cette erreur:
Schema specified is not valid. Errors:
The mapping of CLR type to EDM type is ambiguous because multiple CLR types match the EDM
type 'Hotel'. Previously found CLR type 'Storm.API.Data.Rates.Hotel',
newly found CLR type 'Storm.API.Data.Availability.Hotel'.
La seule solution que j'ai trouvée est de séparer les schémas en projet différent, mais comme j'ai plus de 2 schémas, je ne veux pas créer autant de projets pour ça.
Y at-il une autre solution qui me permettra d'avoir tous les schémas sous le même projet sans cette erreur?
Vous pouvez modifier le nom du type d'entité dans le navigateur de modèle pour chaque schéma. Vous disposez donc du schéma Type Availability_Hotel on Availability et Rates_Hotel on Rates. –
Je pense qu'avoir des projets séparés est une bonne solution, car avoir un schéma différent est la définition de votre domaine et il est préférable de rendre cette séparation de domaine claire en ayant des projets distincts. – SOfanatic