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

C# Discussion :

UN Dataset, DES Form : comment partager un dataset avec plusieurs formulaires ?


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Février 2009
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 163
    Par défaut UN Dataset, DES Form : comment partager un dataset avec plusieurs formulaires ?
    Bonjour à tous,

    Je me doute que la question à déjà du être posé sur Développez, puisque c'est le cas sur le net, mais je ne trouve pas de réponses pertinentes.

    En C#, pour la première fois, j'utilise un DataSet avec plusieurs formulaires.

    Le problème c'est que dans la partie designer de mes Form, lorsque j'utilise un dataset, il me re-déclare une instance de celui-ci dans chaque Windows Form.

    A mes yeux cela à deux inconvénient majeurs :
    • la clarté du code, alors que la tendance serait à la séparation du code (MVC, etc), le designer fait sa propre soupe en mélangeant tout.
      Je voudrais isoler mon Dataset dans un composant (en Design Pattern Singleton par exemple), et utiliser ce composant (contenant le Dataset et les TableAdapter) dans le Designer de mes Form. Histoire de ne pas avoir 100 instance des mêmes objets...
    • le gaspillage des ressources la machine (temps de chargement des tables utilisées + espace mémoire) : re-déclaration et re-chargement des DataSet, DataTable, TableAdapter, Binding Source dans chaque Windows Form !


    Bref, du coup je me prend la tête sur ça. Est-ce que certains sont déjà confronté au problème et ont des conseils sur ce point là ?

    Merci de votre aide.

  2. #2
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Dans la partie designer de mes Form, lorsque j'utilise un dataset
    Au lieu de créer les Datasets en conception, mieux vaut les créer dynamiquement dans une procedure appellée par la forme principale et passer le(s) DataSet(s) dans une fonction d'initialisation des formulaires.

  3. #3
    Membre très actif
    Profil pro
    Inscrit en
    Février 2009
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 163
    Par défaut
    Je ne vois aucun inconvenant à déclarer un dataset à la main, dans mon code, mais après comment je fais pour avoir celui du coté designer ? Je ne le trouve plus lorsque je veux faire du databinding avec un composant par exemple !

    Cela veux-t-il dire que tout doit être fait à la main ensuite ? Que l'on doit ce passer du designer pour faire tout les bindind ?

    Images attachées Images attachées  

  4. #4
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Cela veux-t-il dire que tout doit être fait à la main ensuite ? Que l'on doit ce passer du designer pour faire tout les binding ?
    Ben ... oui!

    ou alors faire hériter toutes les formes d'une forme commune dans laquelle on ne fait que définir le dataset commun.

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2002
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 54
    Par défaut
    Pour ma part quand j'utilise un dataset , je crée deux projet un pour mes forms et un pour mon dataset et mes classes métiers .
    Au démarrage de l'application j'instancie une fois le dataset , ensuite je le passe en paramètre a toutes mes formes.

  6. #6
    Membre très actif
    Profil pro
    Inscrit en
    Février 2009
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 163
    Par défaut
    Ben ... oui!
    Pfffffffff... je me vois mal faire tous les bindings de composant grid super customisé à la main.... ça crain.

    Pour ma part quand j'utilise un dataset , je crée deux projet un pour mes forms et un pour mon dataset et mes classes métiers .
    Au démarrage de l'application j'instancie une fois le dataset , ensuite je le passe en paramètre a toutes mes formes.
    Oui, mais pour faire ça, t'es obligé de casser le code du designer non ? Ou alors tu fais tout à la main après ?

Discussions similaires

  1. comment partager un fichier avec VB6
    Par Virtualité dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 24/02/2011, 17h41
  2. Comment partager un calendrier entre plusieurs personnes
    Par beegees dans le forum Exchange Server
    Réponses: 6
    Dernier message: 18/12/2008, 13h59
  3. Réponses: 14
    Dernier message: 11/07/2008, 13h09
  4. Comment partager une imprimante avec samba ?
    Par julesboucan dans le forum Applications et environnements graphiques
    Réponses: 1
    Dernier message: 18/06/2007, 13h01
  5. Réponses: 2
    Dernier message: 30/09/2003, 15h57

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