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

Accès aux données Discussion :

Construction d'une DAL


Sujet :

Accès aux données

  1. #1
    Membre averti

    Homme Profil pro
    Inscrit en
    Octobre 2003
    Messages
    908
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 908
    Points : 447
    Points
    447
    Par défaut Construction d'une DAL
    Bonjour à tous,

    Je suis en train d'écrire une DAL pour un logiciel.
    C'est la première fois que je fais cela et j'ai le problème suivant :

    Je dispose de deux Tables dans ma base de données
    • Produits
    • Familles


    Un produit dispose de plusieurs familles et une famille n'appartient qu'à un seul produit.

    J'ai donc écrit dans ma DAL les fonctions suivantes :

    Pour la tables produits:

    • List<Produit> GetProduits()
    • Produit GetProduitByIdProduit(UInt32 Id)


    Pour la table Familles :
    • List<Famille> GetFamilles()
    • List<Famille> GetFamillesByIdProduit(UInt32 IdProduit)
    • Famille GetFamilleByIdFamille(UInt32 IdFamille)


    Imaginons maintenant que je veuille récupérer toutes les familles de tous les produits ...
    Comment dois je faire ?
    1. Je rajoute une fonction dans la BLL qui appelera GetPRoduits, puis qui appelera GetFamillesByIdProduit, autant de fois qu'il y a de produit
    2. Ou, est ce que je dois faire une nouvelle fonction dans la DAL qui opére une jointure entre les deux tables ?


    Merci d'avance pour vos réponses ainsi que vos explications.

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 18
    Points : 19
    Points
    19
    Par défaut
    A mon avis le mieux ce créer la requête complete (avec la jointure entre les deux tables) dans la DAL et après créer la fonction qui appelé ce requête dans la BLL.

    Comme ça tu peux d'abord tester ta requête et aussi, si tu fait un changement sur la base de donneés le seule chose que tu dois changer ce la DAL.

  3. #3
    Membre averti

    Homme Profil pro
    Inscrit en
    Octobre 2003
    Messages
    908
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 908
    Points : 447
    Points
    447
    Par défaut
    Dans ce cas là, quel est la limite de la DAL ?
    Parceque je peux faire des jointures dans tous les sens si je veux...

Discussions similaires

  1. [débutant C#]construction d'une dll en dotnet..
    Par just1980 dans le forum C#
    Réponses: 20
    Dernier message: 19/08/2010, 15h53
  2. Construction d'une requête imbriquée
    Par gudul dans le forum SQL
    Réponses: 20
    Dernier message: 03/07/2006, 10h57
  3. Construction d'une regexp : unmatched () in regexp
    Par linou dans le forum Langage
    Réponses: 7
    Dernier message: 27/01/2006, 11h34
  4. Problème de construction d'une classe
    Par AraBorLeg dans le forum Langage
    Réponses: 2
    Dernier message: 05/12/2005, 19h07
  5. construction d'une classe
    Par r0d dans le forum C++
    Réponses: 10
    Dernier message: 16/09/2004, 17h35

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