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

ASP.NET MVC Discussion :

inserer plusieurs enregistrement dans une table avec une boucle for


Sujet :

ASP.NET MVC

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2013
    Messages : 17
    Points : 22
    Points
    22
    Par défaut inserer plusieurs enregistrement dans une table avec une boucle for
    Bonjour tout le monde,
    je travaille avec asp.net mvc2, j'ai une boucle for dans laquelle à chaque itération j'ajoute un nouveau enregistrement à ma table 'messagerie' , ce que je remarque pendant l'exécution que dans la première itération l'ajout s'effectue convenablement , par contre dans la deuxième itération il m'affiche une erreur : le primary key déjà existe , donc il apparaît que le programme ne fait pas de commit entre les itérations. je ne sais pas comment résoudre ce problème, quelqu'un peut m'aider? merci d'avance.
    voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
     for (int j = 0; j < List_Dest.Count(); j++)
                {
     
                    messagerie Message = new messagerie();
                    string strg = List_Dest.ElementAt(j);
     
                    int d = (from p in db.utilisateur
                             where p.Utilisateur1 == strg
                             select p.idUtilisateur).FirstOrDefault();
                    Message.idDestinataire = d;
                    Message.idExpediteur = (int)Session["user"];
                    Message.Objet = Msg_M.Objet;
                    Message.Texte = Msg_M.Texte;
                    Message.Etat = "Non_lu";
                    Message.date_envoi = DateTime.Now;
                  // 
                    db.AddTomessagerie(Message);
                    db.SaveChanges();
                }

  2. #2
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    Salut,

    Comment est faite ta clef primaire dans cette table?

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2013
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Avril 2013
    Messages : 21
    Points : 37
    Points
    37
    Par défaut
    Pour moi c'est ta clef primaire qui n'est pas "autoincrement" ou pas initialisé.

    Donc dans le cas d'un int t'as clef est toujours 0 idem pour un Guid ou autre.
    De fait pour régler ton problème sois passé la clef primaire en autoincrement ou initialisé le champs clef de ton objet

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Message.Id=Guid.NewGuid();
    par exemple.

Discussions similaires

  1. [MySQL] requete dans une table avec une varible d'une autre table
    Par kogoi dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 03/11/2011, 15h24
  2. [XL-2002] Macro de comparaison d'une cellule d'une feuille avec une cellule d'une autre feuille.
    Par steelydan dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/09/2010, 12h59
  3. Copier les enregistrements d'une table vers une table d'une autre DB
    Par karinette21 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 18/11/2008, 21h50
  4. Réponses: 5
    Dernier message: 12/09/2008, 19h53
  5. Réponses: 6
    Dernier message: 30/08/2007, 16h47

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