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 :

Gestion des instances du Container


Sujet :

Entity Framework

  1. #1
    Membre du Club
    Inscrit en
    Avril 2010
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 36
    Points : 63
    Points
    63
    Par défaut Gestion des instances du Container
    Bonjour tout le monde!

    Je suis sur un projet ASP + WCF/EF.

    Pour l'instant j'utilise le conteneur à l'aide d'un singleton pour me simplifier la vie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
            public static ModelDataContainer getInstance()
            {
                if (instance == null)
                {
                    instance = new ModelDataContainer();
                }
                return instance;
            }
    mais dans la plupart des exemples sur msdn, on lit plutot ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
                using (ModelDataContainer container = new ModelDataContainer())
                {
                    ...
                }
    D'un coté on ne crée qu'un seul modèle, donc dans la DAL on n'appelle plus que un getInstance(), de l'autre on réinstancie un container à chaque methode.

    Quelle est la meilleur manière de faire ? Et pourquoi si possible ^^

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,

    J'ai eu la même réflexion que toi quand j'ai commencé à découvrir EF. Pour ce qui est du choix il n'est pas recommandé d'utiliser un singleton comme contexte. Pour plus d'infos une recherche sur le net te fournira pas mal d'explications sur les Best Pratices sinon pour débuter il y a ça.

  3. #3
    Membre du Club
    Inscrit en
    Avril 2010
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 36
    Points : 63
    Points
    63
    Par défaut
    Merci pour les infos!

    Encore une petite question, les classes de ma DAL se consomment les unes aux autres, chaque methode instancie un conteneur, ca veut dire que pour une requete, je vais avoir plusieurs conteneurs contextes... Ca ne pose pas de problemes pour les transactions par exemple ?

    Je me rend compte que du coup j'ai des methodes qui instancie un contexte et qui me recupere des entités d'un autre contexte, y'a trop de code à modifier je voudrais pas faire ca n'importe comment :/

  4. #4
    Invité
    Invité(e)
    Par défaut
    Peut-on avoir plus de précisions sur ce dont tu appelles "conteneur" ?

  5. #5
    Membre du Club
    Inscrit en
    Avril 2010
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 36
    Points : 63
    Points
    63
    Par défaut
    Et bien c'est la classe générée par EF, qui permet d'effectuer les operations sur la base de données qui hérite de ObjectContext

  6. #6
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Points : 1 257
    Points
    1 257
    Par défaut
    Il faut qu'elles partage le même context.

    En gros il te faut un context singleton par appel WCF/Web.

    Il y a plusieurs approche comme le pattern unitofwork mais la meilleur approche c'est surement d'utiliser un IoC comme unity et un lifetime manager approprié.

Discussions similaires

  1. Réponses: 5
    Dernier message: 19/04/2014, 18h40
  2. Gestion des instances sous Citrix ?
    Par Bruno13 dans le forum Composants VCL
    Réponses: 0
    Dernier message: 12/03/2011, 20h39
  3. Gestion des variables - mémoire ?
    Par RIVOLLET dans le forum Langage
    Réponses: 4
    Dernier message: 26/10/2002, 12h44
  4. Réponses: 4
    Dernier message: 04/07/2002, 12h31
  5. c: gestion des exceptions
    Par vince_lille dans le forum C
    Réponses: 7
    Dernier message: 05/06/2002, 14h11

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