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] Classes partielles et règles métier


Sujet :

Accès aux données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de issou
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 181
    Par défaut [Linq to Sql] Classes partielles et règles métier
    Bonjour,

    Je me trouve confronté à un petit problème de conception . Je voudrai avoir pour chaque classe partiel généré par VS dans ma couche DATA , une classe partielle dans le Business afin d'y implémenter des méthodes supplémentaires et purement métier.

    Le problème c'est que la classe partiel n'est possible que si l'on se trouve dans le meme assembly ou module .

    Avec Dynamic Data par exemple , cela ne pose pas de problème car on a pas de regles business donc tout se trouve dans la même DLL (Data) . Et dans ce cas ci , on peut aisément avoir une classe partielle dans la meme couche .

    Par exemple :

    J'ai une table User . Linq me génére le DBML ainsi que la classe partiel User . Maintenant , je voudrai ajoutez des méthodes métiers propres à ma classe User ... c'est là que je bloque .

    Avez vous une idée ?

    D'avance merci .

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut
    Tu es en train de dire que tu ne peux pas, ou que tu ne veux pas enrichir la classe partielle générée ? J'ai du mal à te suivre

  3. #3
    Membre confirmé Avatar de issou
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 181
    Par défaut
    Ma question est justement , comment enrichir ma classe partielle généré du côté Business ?

    Dûmoins est ce possible ?

    J'ai besoin par exemple d'ajouter une méthode dans ma classe User qui permet de connaitre le groupe dans lequel est assigné un utilisateur .

    Je me vois mal le rajouter dans classe User généré dans mon DBML . C'est du traitement business .

    j'espère avoir été plus clair .

  4. #4
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut
    Hélas si, tu dois tout factoriser... Je trouvais au début que ce n'était pas forcément élégant, mais les classes partielles masquent ça assez bien au final.

    Sinon tu dois écrire un converter pour transposer ton Utilisateur DBLM en Utilisateur Business

  5. #5
    Membre confirmé Avatar de issou
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 181
    Par défaut
    Euh oui d'accord , peux tu être plus précis ?

    Transposer ??

    A première vu cela me semblerait une solution . Reste à savoir ce que cela impacte ...

  6. #6
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    //l2sql => DLL intégrant la couche Linq
    //namespace business
    public class User
    {
       private int code;
       private String nom;
     
       public User(l2sql.User U)
       {
          this.code = U.code;
          this.nom = U.nom
       }
    }
    Dans l'idée... Mais je ne suis pas vraiment fan, redondance de code, tout ça tout ça. Perso je te conseille de factoriser tout ton code Linq + Business dans la même DLL

Discussions similaires

  1. [Débutant] Linq to sql c# Classe partiel constructeur
    Par karimot dans le forum Linq
    Réponses: 3
    Dernier message: 31/12/2013, 15h23
  2. Réponses: 0
    Dernier message: 24/12/2012, 12h57
  3. Linq to SQL Class introuvable.
    Par Neocid dans le forum Visual Studio
    Réponses: 1
    Dernier message: 17/02/2009, 18h12
  4. Réponses: 7
    Dernier message: 19/02/2008, 15h14

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