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

Linq Discussion :

[C#] insert de FK dans table de liaison


Sujet :

Linq

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 44
    Par défaut [C#] insert de FK dans table de liaison
    Salut tout le monde,

    je suis sur une application de gestion de CV et j'utilise Linq to entities dans lequel j'ai une table participant, une table expérience et une table exp_participant qui contient deux foreign key (fk_idParticipant et fk_idExperience).

    Lors de l'ajout, j'arrive à ajouter un participant et une expérience mais pas à faire en sorte que les id du participant et de l’expérience s'ajoute dans la table exp_participant automatiquement

    Ajout expérience dans ma liste (myPartiExp):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     myExperience.libelle = addXp.tbLib.Text;
     myExperience.description = addXp.tbDesc.Text;
     myExperience.date_entree = DateTime.Parse(addXp.dataTimeDebut.Text);
     myExperience.date_sortie = DateTime.Parse(addXp.dateTimeFin.Text);
     myPartiExp.Add(myExperience);
    Enregistrement de l'exp ds la db:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    foreach (experience exp in myPartiExp)
    {
     
     
       db.experience.AddObject(exp);
       db.SaveChanges();
     }
    voila si vous pouvoez m'éclairer ce serait cool car je vois pas comment faire la reqête

  2. #2
    Membre confirmé
    Homme Profil pro
    Developpeur .Net
    Inscrit en
    Mai 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations professionnelles :
    Activité : Developpeur .Net
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2011
    Messages : 32
    Par défaut Insertion dans des tables de liaison
    Salut,

    Du fait que vous n'avez pas fourni assez d'info sur comment l'insertion se passe je vous conseille de regarder du cote des PK/FK , Constraints pour etre sur que les relations sont explicitement bien definies.
    Vous pouvez aussi lire cet article(en Anglais):
    http://www.singingeels.com/Articles/...tionships.aspx

    Bonne chance.

  3. #3
    Membre Expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Par défaut
    Je pense que votre modèle de données est faux!
    Une expérience etant liée à un participant la table d'association exp_participant n'a pas de sens...

    La colonne idparticipant doit-être partie intégrante de votre table expérience déclarée en FK donc...
    En effet fonctionnellement une experience n'a pas de'existence si elle n'est pas liée à un participant.

  4. #4
    Inactif  
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2009
    Messages
    1 083
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 1 083
    Par défaut
    Citation Envoyé par Raph87 Voir le message
    Salut tout le monde,

    je suis sur une application de gestion de CV et j'utilise Linq to entities dans lequel j'ai une table participant, une table expérience et une table exp_participant qui contient deux foreign key (fk_idParticipant et fk_idExperience).

    Lors de l'ajout, j'arrive à ajouter un participant et une expérience mais pas à faire en sorte que les id du participant et de l’expérience s'ajoute dans la table exp_participant automatiquement

    Ajout expérience dans ma liste (myPartiExp):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     myExperience.libelle = addXp.tbLib.Text;
     myExperience.description = addXp.tbDesc.Text;
     myExperience.date_entree = DateTime.Parse(addXp.dataTimeDebut.Text);
     myExperience.date_sortie = DateTime.Parse(addXp.dateTimeFin.Text);
     myPartiExp.Add(myExperience);
    Enregistrement de l'exp ds la db:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    foreach (experience exp in myPartiExp)
    {
     
     
       db.experience.AddObject(exp);
       db.SaveChanges();
     }
    voila si vous pouvoez m'éclairer ce serait cool car je vois pas comment faire la reqête
    Même problème que lui.

    2 table, une table de liaison avec les 2 ID des 2 premières table. Avant même de faire un SaveChanges, lors de l'exécution ça dit comme quoi les propriétés de la table de liaison sont des FK et donc qu'on ne peut pas les modifier !

    Par contre supprimer ou ajouter une ligne dans la table de liaison fonctionne !

  5. #5
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Comme déjà dit, il est aberrant techniquement d'utiliser l'ORM pour mettre à jour des tables de liaisons M-N.

Discussions similaires

  1. [MySQL] requete update et insert dans table de liaison
    Par rollingboy dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 21/06/2014, 18h34
  2. [MySQL] Problème insertion de données dans table Mysql
    Par Malcolm78 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 24/10/2007, 17h25
  3. Problème insertion nouveau champs dans table
    Par antoine1504 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 04/07/2007, 12h00
  4. Insertion en masse dans table de fait
    Par niiccoo dans le forum Oracle
    Réponses: 19
    Dernier message: 29/05/2006, 10h56
  5. [MySQL] Problème d'insertion de données dans table d'associations
    Par Yukhaa dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 07/02/2006, 17h10

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