IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Framework .NET Discussion :

Entity Framework et Multiple Heritage


Sujet :

Framework .NET

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 21
    Points : 19
    Points
    19
    Par défaut Entity Framework et Multiple Heritage
    Bonjour,
    J'ai besoin d'utiliser EF avec de nombreux héritages complexes en TPH. Avant de me casser les dents à le mettre dans mon logiciel, j'ai fais un projet à part avec des classes (beaucoup) plus simples :

    Vehicule > Abstract
    IdVehicule : int
    NomProprietaire : String
    Velo : Hérite de vehicule
    Pas de propriété mais contiendra des méthodes
    Motorise : Herite de Vehicule > Abstract
    Consommation : float
    DateMiseCirculation : date
    Moto : Hérite de motorise
    Pas de propriété mais contiendra des méthodes
    Voiture : Hérite de motorise
    Type : String (SUV, berline, etc.)
    Scooter : Herite de motorise
    Pas de propriété mais contiendra des méthodes
    Ma table en bdd (SQL SERVER 2008) est :
    IdVehicule : int PK
    NomProprietaire : varchar(50)
    Consommation : float
    DateMiseCirculation : date
    Type : varchar(50)
    Discriminator : varchar(10)
    Je pars du principe que si Discrimator permet de faire la différence entre mes entités.
    Dans mon EDMX j'ai les classes Motorise et Vehicule qui sont absract et sans condition. J'ai les classes Velo, scooter, moto et voiture se basent sur Dicscrimator avec chacun une valeur différentes.

    Cependant, quand je compile j'ai l'erreur suivante :
    Error 3032: Problem in mapping fragments starting at lines 78, 85:EntityTypes EF4InheritanceModel.Scooter, EF4InheritanceModel.Moto, EF4InheritanceModel.Voiture, EF4InheritanceModel.Velo are being mapped to the same rows in table Vehicule. Mapping conditions can be used to distinguish the rows that these types are mapped to.
    Si quelqu'un a une idée d'où cela peut venir, je suis preneur.

    Merci d'avance.

  2. #2
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 21
    Points : 19
    Points
    19
    Par défaut
    Pas d'idée ?
    Si besoin je peux ajouter plus de précision.
    Merci d'avance.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Tu es sûr d'avoir bien appliqué ce que dit VS à savoir :
    Mapping conditions can be used to distinguish the rows that these types are mapped to.
    Sinon mets-nous une capture d'écran du mappaging effectué pour ces différentes entités ?

  4. #4
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 21
    Points : 19
    Points
    19
    Par défaut
    Salut,
    Oui, j'ai une condition pour chaque entité sauf pour les entités abstract (Vehicule et Motorise). La valeur est différente pour chaque élément
    Si je mets tout de même une condition avec une valeur lambda sur j'ai l'erreur suivante :
    Error 3034: Problem in mapping fragments starting at lines 90, 98:An entity is mapped to different rows within the same table. Ensure these two mapping fragments do not map two groups of entities with overlapping keys to two distinct groups of rows.
    J'ai essayé dans ce cas de mettre la propriété abstract à false pour les entités Motorise et Vehicle et là ça compile. Mais dans mon cas, elles doivent être abstract.

    Merci d'avance.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 21
    Points : 19
    Points
    19
    Par défaut
    Personne n'a une idée ?

Discussions similaires

  1. [Débutant] Entity Framework Code First et utilisation de SGBD multiple
    Par badams dans le forum Entity Framework
    Réponses: 2
    Dernier message: 16/02/2015, 08h37
  2. Heritage et entity Framework
    Par benny-blanco dans le forum VB.NET
    Réponses: 1
    Dernier message: 22/02/2012, 08h52
  3. version final d'Entity framework
    Par korchimustapha dans le forum Général Dotnet
    Réponses: 8
    Dernier message: 04/07/2008, 17h21
  4. [ADO.NET Entity Framework] génération des tables
    Par anthyme dans le forum Accès aux données
    Réponses: 3
    Dernier message: 22/02/2008, 17h44
  5. Linq - Entity Framework
    Par Jfrancois57 dans le forum Framework .NET
    Réponses: 11
    Dernier message: 12/02/2008, 08h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo