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

VB.NET Discussion :

usercontrol : obliger une propriété à être d'un type qui hérite d'un type de base bien précis


Sujet :

VB.NET

  1. #41
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut
    Non vraiment pas vu que tu vas en monter une instance dans tes dto en variable globale privée et que c'est ces méthodes que tu appelleras via celle de ton dto.

  2. #42
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Donc si je comprends, au niveau du code, ça donnerait quelque chose dans le genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    Public Interface ISource
        'les signatures des méthodes et propriétés de la classe Source
    End Interface
     
    Public Class Source
        Implements ISource
     
        'les propriétés et méthodes qui existent déjà
    End Class
     
    Public Class DTO_XXX
        Inherits DTO_Base
        Implements ISource
     
        Private source as Source
     
        'les méthodes de l'interface ISource avec l'exemple d'implémentation suivant
        Public Sub Methode1(ByVal x as Object)
            source.Methode1(x)
        End Sub
     
    End Class
    A piori, ça a l'air de fonctionner. Mais qui des propriétés ? Si je fais des trucs dans les getter/setter, comment je fais pour reprendre ça depuis la classe Source. Autant pour une méthode ou une fonction, pas de souci mais pour une propriété, je ne vois pas ce que j'appelle. A moins de recopier le code dans le DTO bien sûr...

    Et en écrivant ceci, je me rends compte que je m'égare... Les DTO ne doivent pas contenir les méthodes... Ce sont les classes de la BLL !!

    Comme quoi, je ne maitrise pas encore bien le concept...

    EDIT :

    En fait je tourne en rond... Ok, le DTO doit être léger et n'est pas sensé contenir de méthode. Cela étant, c'est quand même bien lui que je passe à mes composants visuels pour qu'ils affichent ce qu'il doivent. L'objet de la couche BLL se contentant "d'abriter" le DTO sous forme de propriété, de le demander ou l'envoyer à la couche DAL et de faire éventuellement quelques traitements dessus.

    Je n'ai donc pas l'impression non plus que ce soit la classe de la BLL qui doivent implémenter ISource. Maintenant, p-e suis-je un peu extrémiste et que un DTO avec pour une fois des méthodes, ça passe ^^.
    Kropernic

  3. #43
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut
    Effectivement, d'après ce que j'en ai lu et ce que tu m'en a expliqué tu as l'air de t'égarer sur les DTO mais le principe reste le même.

    Tu as bien compris le principe, pour les propriétés tu sais aussi les byPasser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        Property maPropriete As Integer
            Get
                Return source.maPropriété
            End Get
            Set(ByVal value As Integer)
                source.maPropriéte = value
            End Set
        End Property
    Il y a plusieurs design Pattern qui travail de cette façon...

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/09/2013, 13h25
  2. Réponses: 2
    Dernier message: 28/06/2007, 15h56
  3. [Composant] publier une propriété avec un type perso
    Par jpc34 dans le forum C++Builder
    Réponses: 6
    Dernier message: 12/10/2004, 08h39
  4. Réponses: 2
    Dernier message: 18/10/2003, 14h42
  5. Récupération valeur d'une propriété type TStrings
    Par Stéphane Vaillant dans le forum Langage
    Réponses: 2
    Dernier message: 01/03/2003, 11h47

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