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

Windows Communication Foundation .NET Discussion :

Taille de flux et pagination


Sujet :

Windows Communication Foundation .NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 143
    Par défaut Taille de flux et pagination
    Bonjour,
    Je suis en train de mettre en place une solution WCF qui a besoin de recevoir beaucoup de données. Etant donnée les limites d'utilisation mémoire fixées, je ne peux pas agrandir le tuyau pour tout faire passer d'un coup, j'ai donc choisi de "paginer" ma requête.
    Je passe par référence le dernier ID remonté et un boolén qui me dit si j'ai fini ou non, le tout paramétré grâce à un nombre de résultat par aller retour.
    Mon problème c'est que, pour mettre à jour mon booléen, je n'ai pas trouvé d'autres solutions que de dire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If(nbLigneTrouve == nbLigneParPage)
    FinTransfert = False;
    Le problème étant que, par exemple, si je défini une pagination de 100 et que le total des enregistrements est de 500, je vais renvoyer False pour la fin du transfert et donc refaire un dialogue: Client -> Service -> DAL -> Service -> Client alors que j'en ai pas besoin puisqu'il ne me restera plus d'autre enregistrement à ramener.
    Quelqu'un a-t-il déjà eu ce problème?
    A votre dispo pour plus d'info ou quoi que ce soit....

  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
    Sinon on peut faire du streaming en WCF

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 143
    Par défaut
    Je suis tout à fait d'accord mais là nous sommes en plein prototypage et le but est de faire une partie en streaming et l'autre de la manière que j'ai exposé plus haut.
    Merci quand même pour ton aide.

  4. #4
    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
    Pourquoi tu ne ferai pas ton test a la fin de ta méthode au lieu de le faire au début (en regardant ce qu'il reste a faire plutôt que ce qui est fait)

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 143
    Par défaut
    Je le fais bien à la fin de ma méthode en comparant le nombre de lignes retournées par rapport à ce que j'attends. Par contre je ne veux pas faire d'appel supplémentaire à la base simplement pour vérifier qu'il reste des enregistrements car cela doublerait le nombre d'aller - retour entre mon service et la DAL et du coup la perte engendrée par un "dialogue" complet (client - service - DAL) serait moins importante que de doubler le nombre de requête sur la base!!!
    Je sais pas trop comment faire là car à un moment ou à un autre il faut bien savoir si il y a encore du travail à faire et pour cela on ne peut pas faire autrement que d'intéroger la base.... Pour l'instant je garde le fonctionnement actuel qui peut engendrer un "dialogue" complet de trop en attendant de trouver une meilleure approche.
    Merci

  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 : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    Citation Envoyé par ludogoal Voir le message
    Je le fais bien à la fin de ma méthode en comparant le nombre de lignes retournées par rapport à ce que j'attends. Par contre je ne veux pas faire d'appel supplémentaire à la base simplement pour vérifier qu'il reste des enregistrements car cela doublerait le nombre d'aller - retour entre mon service et la DAL et du coup la perte engendrée par un "dialogue" complet (client - service - DAL) serait moins importante que de doubler le nombre de requête sur la base!!!
    Je sais pas trop comment faire là car à un moment ou à un autre il faut bien savoir si il y a encore du travail à faire et pour cela on ne peut pas faire autrement que d'intéroger la base.... Pour l'instant je garde le fonctionnement actuel qui peut engendrer un "dialogue" complet de trop en attendant de trouver une meilleure approche.
    Merci
    tu ne peux pas vérifier combien tu as d'éléments à récupérer une seul fois a l'initialisation de ta demande et garder ce nombre tout le long ?

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

Discussions similaires

  1. Calcule la taille d’un flux
    Par louay02 dans le forum Langage
    Réponses: 4
    Dernier message: 18/04/2012, 11h31
  2. Redimensionner la taille du flux
    Par yam.300 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 13/03/2009, 17h20
  3. Réponses: 1
    Dernier message: 08/03/2007, 19h00
  4. [Http/JSP] : Taille du flux envoyé
    Par gex77 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 04/05/2006, 11h53

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