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 :

[Linq to Sql] BLL ou DAL


Sujet :

Accès aux données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Portugal

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2006
    Messages : 55
    Par défaut [Linq to Sql] BLL ou DAL
    Salut,

    je me demande quel est le meilleur abordage de possitioné ma class LINQ to SQL. Dans mon project BLL (BusinessComponentsLayer) ou dans mom project DAL (DataAccessLogicComponents).
    Car j'ai un problem au moment de acedé au metode insertonsubmit e les outres dans mon project win32 ou web.

    Que recomendez-vous mois?

  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
    logiquement si tu vas jusqu a faire des couches DAL et BLL (Business Logic Layer) ta couche UI ne devrait pas avoir a appeller les méthodes "insertonsubmit"

  3. #3
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Par défaut
    Si tu as bien les deux couches BLL et DAL, je te conseille de mettre tous les objets LinQ To SQL dans la DAL. Fait ensuite une BLL faisant appel à la classe DataContext de LinQ To SQL. Ta BLL fera office d'interface (+logique métier) avec LinQ To SQL.

    Personnellement, je prefère un design plus simple avec une seule couche (BLL + DAL) lorsqu'on travaille avec LinQ To SQL ou Entity Framework. La classe DataContext et LinQ To SQL/Entities suffit dans la plupart des cas. Au pire, on peut étendre les classes métiers et la classe DataContext.

  4. #4
    Membre confirmé Avatar de Marsupilami_00
    Profil pro
    Architecte logiciel
    Inscrit en
    Janvier 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Architecte logiciel

    Informations forums :
    Inscription : Janvier 2007
    Messages : 102
    Par défaut
    Hello,

    Je travaille actuellement sur une application WEB dont l'architecture de dev est la suivante

    ASP.NET
    BLL
    DAL

    Dans la DAL je code les fonctions en Linq to entité ou en Entité to SQL (mon contexte se trouve ici)
    Dans la BLL Je consolide en fonction de la fonctionnalité les différentes fonctions de la DAL
    La couche ASP.NEt fait appel à la BLL

    De façon tranverse je donne accès au modèle de données pour pouvoir accéder aux entités manipulées

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 70
    Par défaut
    Pour ma part, j'ai trois couches :

    - UI (Interfaces utilisateurs Win32)
    - Core (BLL)
    - Data (DAL)

    Mes entitées linq-to-sql sont dans la couche DAL, et j'ai créé les objets de mon modèle de domain dans la couche DLL (presqu'identiques aux entitées linq-to-sql, mais seront utilisés par la couche présentation).

    Comme je ne veux pas avoir de lien direct entre ma couche UI et ma couche BLL, j'ai créé des DAO (data access objects) dans la couche BLL, qui contiennent les méthodes dont la couche UI aura besoin, du genre GetByID(int Id), GetByFirstName(string firstName), etc. La vocation de mes DAO est d'interroger la DAL et retourner les objets concrets de ma BLL aux couches supérieures.

    Mon problème est que les DAO de ma couche BLL, utilisent les expressions LINQ pour retirer l'information nécessaire de la couche DAL. Je crois qu'il serait plus sage de garder ces expressions LINQ au niveau de la couche DAL, mais j'ai aucune idée comment faire cela.

    Est-ce que quelqu'un peut m'aider ?

    Merci d'avance,

Discussions similaires

  1. Réponses: 7
    Dernier message: 19/02/2008, 14h14
  2. [Linq to Sql] Insertion de quelques champs uniquement
    Par binoo dans le forum Accès aux données
    Réponses: 5
    Dernier message: 16/02/2008, 14h29
  3. [Linq 2 SQL] Problème de modélisation
    Par tomlev dans le forum Accès aux données
    Réponses: 5
    Dernier message: 12/02/2008, 23h29
  4. [Linq to sql] db.add() ?
    Par telynette dans le forum Accès aux données
    Réponses: 2
    Dernier message: 08/02/2008, 19h54
  5. [Linq to SQL] Refresh du dbml
    Par zeavan dans le forum Visual Studio
    Réponses: 5
    Dernier message: 02/01/2008, 10h15

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