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

Dotnet Discussion :

[EF et WPF] Lazy Loading et MVVM


Sujet :

Dotnet

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert Avatar de davcha
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 258
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 258
    Par défaut [EF et WPF] Lazy Loading et MVVM
    J'ai une interface wpf contenant notamment un treeview et une listview.

    J'ai une arborescence de catégories contenant divers objets. Pensez un peu à un répertoire avec des fichiers dedans, ça revient globalement au même.

    Mon treeview m'affiche l'arborescence de catégories et la listview affiche le contenu des catégories.

    Alors... Je veux absolument éviter d'avoir à charger l'intégralité des données lors du chargement de la fenêtre (normal me direz-vous).

    Seulement, j'ai un peu de mal en ce qui concerne la listview et les sous-catégories.
    Il est hors de question que je fasse un
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    db.Categories.Include("Subcategories").Include(...
    Ca reviendrait à charger toute la base de données....

    Et EF ne gère pas le Lazy Loading implicite... Alors je me pose la question : où implémenter le lazy loading (explicite donc), sans "briser" le DP MVVM ?

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

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    Finalement ?

  3. #3
    Membre Expert Avatar de davcha
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 258
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 258
    Par défaut
    Dans le cas des catégories et sous-catégories, tu fais un ViewModel pour le type Category, genre CategoryViewModel.

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    class CategoryViewModel {
      ObservableCollection<CategoryViewModel> _Subcategories;
      public IEnumerable<CategoryViewModel> Subcategories{
        get{
          if(_Subcategories == null) {
            // blabla qui charge les sous-catégories
          }
        }
      }
    }

  4. #4
    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 : 44
    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
    N'oublie pas la propriété IsAsync sur ton binding, pour éviter de freezer l'appli pendant que ça charge

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. spring2 hibernate3 : lazy loading
    Par fxonline dans le forum Hibernate
    Réponses: 9
    Dernier message: 10/02/2007, 18h56
  2. Lazy loading sur component
    Par El Saigneur dans le forum Hibernate
    Réponses: 2
    Dernier message: 03/11/2006, 10h30
  3. Lazy loading et fermeture de session hibernate
    Par BRAUKRIS dans le forum Hibernate
    Réponses: 3
    Dernier message: 20/07/2006, 13h08
  4. [hibernate] problème pour desactiver le lazy loading
    Par agougeon dans le forum Hibernate
    Réponses: 2
    Dernier message: 14/03/2006, 11h20
  5. [HIBERNATE 3]Lazy loading
    Par SEMPERE Benjamin dans le forum Hibernate
    Réponses: 11
    Dernier message: 08/02/2006, 22h40

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