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

Entity Framework Discussion :

NullReferenceException suite à un EntityCollection.Add


Sujet :

Entity Framework

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut NullReferenceException suite à un EntityCollection.Add
    Yop,

    J'ai une collection d'objets Variable, qui ont des propriétés communes. Lorsque de telles variables peuvent être groupées, je les regroupe dans un bloc. Le bloc peut être défini par une relation en BdD ou généré dynamiquement, j'utilise ci après la solution 2 ==> le bloc ne fera jamais connaissance avec la BdD.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    public class Variable
    {
        public Bloc MonBloc {...}
    }
    public class Bloc
    {
       public EntityCollection<Variable> Variables {...}
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    List<Variable> mesVars = context.Variable.ToLIst();
    ...//Plus  loin et hors context
     
    Bloc b1 = new Bloc();
    foreach(variable v in mes.Vars.Where(...))
    {
      b1.variable.Add(v);
      v.Bloc = b1;
    }
    Et ça fait boum sur le Add avec la Trace suivante (simplifiée) :

    Une référence d'objet ne peut pas être associé à un objet blablabla
    A System.Data.ObjectStateManager.DegradePromotedRelationShips()
    ...
    EntityCollection.Add(TEntity entity)
    Ca me le fait d'un seul coup, aucun souci jusqu'à cette après-midi.

    Pas de pot, galère internet au taf, donc je travaille de mémoire pour restituer ici.

    Merci

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Je suis pas sûr, mais ce serait pas parce que la Variable est lié à l'ObjectContext et pas le Block ?

    Essaie de détacher la Variable du contexte :


  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut
    logiquement, lorsqu'on sort du bloc using du context, le graphe d'objets est alors marqué comme detached automatiquement ?! Le pire c'est que l'erreur n'est pas systématique, parfois elle se produit, parfois non... Vive le debug

Discussions similaires

  1. reauete suite à une requete
    Par 74160 dans le forum Requêtes
    Réponses: 4
    Dernier message: 22/08/2003, 14h42
  2. [JSP][JDBC]1 seule connexion à la DB(suite)
    Par betherb dans le forum JDBC
    Réponses: 6
    Dernier message: 14/08/2003, 10h02
  3. Migration Access > SQL Server (suite) : Compteur
    Par LadyArwen dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 06/03/2003, 14h08
  4. Réponses: 2
    Dernier message: 04/03/2003, 23h24
  5. Pb BDE suite a passage en Windows 2000 pro
    Par ARIF dans le forum Paradox
    Réponses: 4
    Dernier message: 18/11/2002, 11h39

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