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 Forms Discussion :

1 gros dataset ou plusieurs petit


Sujet :

Windows Forms

Vue hybride

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

    Informations forums :
    Inscription : Avril 2004
    Messages : 129
    Par défaut 1 gros dataset ou plusieurs petit
    Bonjour,

    J'aimerais savoir quel est la bonne "pratique" à employé lorsqu'on a des datasets dans une application "desktop". J'ai passé les dernière année à developper en Web alors je n'avais pas à me pencher sur ce genre de problème.

    En ce moment je me construit une petite application en C# et après avoir regardé plusieurs vidéos sur ADO.net je me demandais quel approche était la meilleur quand on construit un dataset. Est-ce mieux d'avoir un seul dataset qui inclu toutes les tables que je vais avoir besoin dans les différentes Form de mon application ou si c'est mieux de faire plusieurs petits datasets ?

    Désolé si la question peut sembler évidente mais j'essayais de voir ce qui était mieux et je n'arrive pas à trouver la réponse.

    Merci !

  2. #2
    Rédacteur
    Avatar de Louis-Guillaume Morand
    Homme Profil pro
    Cloud Architect
    Inscrit en
    Mars 2003
    Messages
    10 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Cloud Architect
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 10 839
    Par défaut
    ca depend (elle t'embete cette réponse hein )

    En mettant toutes tes tables dans un seul objet c'est mieux, ca crée moins d'objets en mémoire donc c'est la solution

    MAIS
    en regroupant tout, tu trimballes des informations qui ne te servent pas tout le temps et donc ton dataset reste tout le temps en memoire, or p-e que dans ton appli, certaines tables ne servent que pendant 10sec sur une fenetre particulière. elles ne pourront pas être recyclées si tu les mets avec des tables dont la durée de vie est plus longue

    Il y a plein d'autres cas où trimballer un seul dataset entre chaque form est plus facile mais dans d'autres cas, lorsque tu fais mumuz avec les dataset (copie, clone, etc), tu risque de jouer avec des données qui ne servent à rien et allourdissent tous les traitements. donc pour finir, ca dépend de ce que tu veux faire (et d'un avis perso, c'est tout aussi valable pour les applis Web )

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2004
    Messages : 129
    Par défaut
    Merci bien pour la réponse ! En effet, c'est aussi pour valide pour le Web c'est juste qu'en Web puisque "traîner" des données inutile peut vide allourdir le loading des pages j'ai toujours fonctionner avec le minimum nécessaire. D'ailleur les exemples en Web sont toujours avec des Dataset qui contient le minumum.

    En commençant à codé en Winform je regardais les exemple de code et les vidéos et contrairement au Web je voyais souvent des gros dataset et parfois l'utilisation de plusieur petit alors je n'étais plus sûre de ce qui était le mieux. Je sais d'avance que mes tables vont contenir des centaines de milliers d'enregistrement alors je vais opter pour avoir des dataset ayant seulement les tables nécessaires pour chaque form.

    Encore merci !

  4. #4
    Rédacteur
    Avatar de Louis-Guillaume Morand
    Homme Profil pro
    Cloud Architect
    Inscrit en
    Mars 2003
    Messages
    10 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Cloud Architect
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 10 839
    Par défaut
    si tes tables possèdent beaucoup d'enregistrements alors ces derniers ne doivent pas être rappatriés. ca prendrait toute la mémoire du pc.
    Fait des retours appli <> DB autant que nécessaire mais ne ramène pas ta base de données en local, ce serait une grosse erreur.
    même si l'appli est un peu plus lente à faire à chaque fois des requetes, il ne faut ramener que ce dont tu as besoin et si possible faire les gros calculs (sommes, stats, etc) côté serveur base de données car ils sont souvent optimisés pour faire cela. faire du gros traitement coté appli reviendrait à ne pas utiliser les avantages des SGBD comme les index ou la précompilation des procédures stockées

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2004
    Messages : 129
    Par défaut
    oh ok ! Merci bien... La dernière fois que j'ai codé en Winform c'était avec ADO et non ADO.net. Je viens tout juste de lire un des tutoriels de ADO.NET et là je comprend pourquoi je suis un peu mêlé. Mes connaissances ne sont pas tout à fait à jour car je me rend compte que ADO.net ne fonctionne pas pareil pour la lecture des données. De plus en Web je codais en ASP.3.0 et ce n'est que tout dernièrement que notre compagnie est passé en .NET alors je suis encore à l'étape de me mettre à jour.

    Désolé de poser encore une question mais existe-t'il des tutoriels ou autre ressources pour m'indiqué comment bien faire l'analyse de nos besoin pour une application .net2. Par exemple actuellement notre application est Web et à 90% elle est en ASP3.0. Un de nos client n'a pas d'Accès Internet alors on dois lui faire une petit module pour rouler localement. Dans ce module on gère les Client-Commandes. Certains de leurs clients peuvent passé 100 commandes par semaines et ces commandes peuvent prendre des mois voir des années à se réaliser. De plus certaines des ces commandes ont des milliers d'items commandées. Donc le nombre d'enregistrement augment vite.

    Dans le fond ce que je cherchais c'est un tutoriel expliquant les choix à faire selon les besoins de l'application au niveau de la gestion des données.

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

Discussions similaires

  1. Un gros processus ou plusieurs petits ?
    Par tepaze dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 23/04/2013, 23h14
  2. Un gros dataset ou plusieurs petits?
    Par Mike550 dans le forum VB.NET
    Réponses: 3
    Dernier message: 18/03/2010, 01h46
  3. Partir d'un gros fichier pour en faire plusieurs petits
    Par Bruno13 dans le forum Débuter
    Réponses: 12
    Dernier message: 07/10/2009, 13h12
  4. [Outil] Séparer un gros XML en plusieurs petit
    Par virgul dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 23/04/2008, 07h43
  5. plusieurs petite tables ou une seule grande table
    Par aaronw dans le forum Décisions SGBD
    Réponses: 8
    Dernier message: 19/05/2005, 09h22

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