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 :

Conseil utilisation propriétés d'une class


Sujet :

VB.NET

  1. #1
    Membre éclairé Avatar de r.morel
    Homme Profil pro
    Dessinateur CAO
    Inscrit en
    Août 2014
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Dessinateur CAO
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 336
    Points : 667
    Points
    667
    Par défaut Conseil utilisation propriétés d'une class
    Bonjour à tous,
    J'ai créer une class MaClass avec une trentaine de propriétés. Dont une vingtaine son nommées de la façon la suivante Property1, Property2, Property3...
    Est-il possible de lister l'ensemble des propriétés afin de pouvoir les récupérer comme suit : ou est ce que je n'utilise pas correctement ma Class ?

    Merci par avance pour vos réponses.
    Merci de ainsi que d'utiliser les boutons et

  2. #2
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    c'est possible, mais je pense que tu as un défaut de conception, une List ou un Dictionary serait surement plus adapté
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre éclairé Avatar de r.morel
    Homme Profil pro
    Dessinateur CAO
    Inscrit en
    Août 2014
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Dessinateur CAO
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 336
    Points : 667
    Points
    667
    Par défaut
    Merci Pol63 pour cette réponse.
    Tous conseils ou critiques son les bienvenues. C'est le but de cette question.

    Aujourd'hui, j'utilise une List(Of String) pour mes compétences la Class avait les bénéfice suivants :
    1. Nommer les champs pour plus de lisibilité
    2. Pouvoir avoir recours a plusieurs types d'éléments : String, integer, date


    Dois-je donc supprimer ma Class
    Merci de ainsi que d'utiliser les boutons et

  4. #4
    Membre expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2013
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 563
    Points : 3 404
    Points
    3 404
    Par défaut
    Citation Envoyé par r.morel Voir le message
    J'ai créer une class MaClass avec une trentaine de propriétés. Dont une vingtaine son nommées de la façon la suivante Property1, Property2, Property3...
    [...]
    ou est ce que je n'utilise pas correctement ma Class ?
    Une classe avec une trentaine pro propriétés je trouve ça beaucoup (après je ne connais pas le contexte..). Si en plus les noms ne sont pas explicites, je pense que c'est une mauvaise utilisation des classes...

    Ce que tu essaye de faire (MaClasse.Item(i)) c'est accéder à un élément une collection. Mais pour te répondre correctement il faudrait savoir ce que sont ces propriétés et comment tu souhaites les utiliser (dans quel but).

  5. #5
    Membre éclairé Avatar de r.morel
    Homme Profil pro
    Dessinateur CAO
    Inscrit en
    Août 2014
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Dessinateur CAO
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 336
    Points : 667
    Points
    667
    Par défaut
    Seul les dernières propriétés n’ont pas de nom explicite. (Mais la description reste un exemple).
    En fait, j'ai une BDD et le but de la Class et de créer un élément dont les propriétés correspondent aux données de la BDD.
    Ensuite pour alimenter un formulaire au lieu de recopier vingt fois le même bout de code je souhaitais faire une boucle d’où ma demande.
    Merci de ainsi que d'utiliser les boutons et

  6. #6
    Membre expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2013
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 563
    Points : 3 404
    Points
    3 404
    Par défaut
    Citation Envoyé par r.morel Voir le message
    En fait, j'ai une BDD et le but de la Class et de créer un élément dont les propriétés correspondent aux données de la BDD.
    A toi de voir, mais s'il est possible de regrouper les propriétés entre elles pour simplifier la compréhension je te conseille de le faire. Ex :

    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
     
    Public Class Personne
       Public Age as Integer
     
       'Deux propriétés pouvant être "regroupé"
       Public Nom as String
       Public Prenom as String
     
       'En une nouvelle propriété
       Public Civilite as Civilite 
    End Class
     
    Public Class Civilite
       Public Nom as String
       Public Prenom as String
    End Class
    Après, il es possible que ça ne colle pas dans ton cas.

    Citation Envoyé par r.morel Voir le message
    Ensuite pour alimenter un formulaire au lieu de recopier vingt fois le même bout de code je souhaitais faire une boucle d’où ma demande.
    Je m'interroge cependant sur ceci. Que renseignes-tu sur le formulaire? Car si tu renseignes différents composants, comment savoir quelle propriété sera la bonne pour le bon composant?

  7. #7
    Membre éclairé Avatar de r.morel
    Homme Profil pro
    Dessinateur CAO
    Inscrit en
    Août 2014
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Dessinateur CAO
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 336
    Points : 667
    Points
    667
    Par défaut
    Merci pour cette réponse. C'est une bonne idée.
    J'ai un formulaire dans lequel je renseigne les informations sur un composant. Par contre je peux parcourir une List( Of MaClass) avec deux boutons suivants ou précédent. Donc ta remarque est fondée.
    Merci de ainsi que d'utiliser les boutons et

  8. #8
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    il faudrait exprimer la problématique de départ sinon on arrive au problème xy
    parce que si le but c'est de faire un code qui lit la base de données et remplit l'instance il y a en effet moyen de faire une boucle, mais bon ca vaudrait le coup surtout si tu as plusieurs classes
    si c'est juste pour du oneshot y a des choses genre TextPad qui permettent de faire des macros clavier et donc en 5 secondes tu obtiens ton code
    après si c'est pour autre chose précise le aussi ...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  9. #9
    Membre éclairé Avatar de r.morel
    Homme Profil pro
    Dessinateur CAO
    Inscrit en
    Août 2014
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Dessinateur CAO
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 336
    Points : 667
    Points
    667
    Par défaut
    Je vais donc essayer de préciser :
    Contexte :
    • Apllication Winform
    • BDD Access
    • Connexion Ace Oledb 12
    • Fichier .mdb sur le serveur
    • Une petite dizaine d'utilisateurs


    Structure :
    • Un Formulaire avec un datagridview
    • Un formulaire avec les champs dynamiques permettant de renseigner la BDD
    • Un dataset
    • Un module contenant tous les traitements
    • Une Class


    La BDD est connectée datagridview via une source de données.
    Lorsque l'on veut ajouter un élément à la BDD le formulaire vierge adéquat permet d'alimenter une List(Of String) qui est transformée en datarow.
    Lorsque l'on veut modifier un élément de la BDD on alimente le formulaire adéquat avec une List(Of String) qui est transformée en datarow après modification.
    Merci de ainsi que d'utiliser les boutons et

  10. #10
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    après le problème xy on a la réponse à côté ^^

    c'est juste que tu nous demande comment faire pour accéder à des propriétés par un index, mais ce n'est pas ta problématique de base, il faut nous expliquer pourquoi tu veux faire ça
    que tu soit sur access et que tu utilises un dgv n'apporte rien
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  11. #11
    Membre éclairé Avatar de r.morel
    Homme Profil pro
    Dessinateur CAO
    Inscrit en
    Août 2014
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Dessinateur CAO
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 336
    Points : 667
    Points
    667
    Par défaut
    Le pourquoi est dans la fin de la réponse. Comme je l'ai dis avant pour remplir mon dgv je peux soit répéter un peu de code soit utiliser une class perso indexée. Mais comme dit également tout conseil sont les bienvenus et je peux bien sur me tromper de méthode.

    Quelle est la méthode la plus adaptée pour remplir une vingtaine de colonne dans une BDD ? Si cela est la List ou le dictionnary j’admets sans problème m'être trompé.
    Merci.
    Merci de ainsi que d'utiliser les boutons et

  12. #12
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    c'est à toi de voir ce qui te convient le mieux parmi plusieurs solutions

    sinon il y a le dictionary<une enum, object>
    avec l'enum tu as le coté pratique d'avoir les noms des choses, et avec object tu peux mettre n'importe quoi dedans (ca oblige à caster par contre en lecture vers autre chose qu'une base de données)
    tu peux tester voir si ca te convient
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/12/2006, 15h10
  2. Réponses: 2
    Dernier message: 27/05/2006, 12h13
  3. Réponses: 5
    Dernier message: 22/01/2006, 09h10
  4. utiliser mysql++ dans une classe
    Par Yevetrovitch dans le forum Bibliothèques
    Réponses: 2
    Dernier message: 11/04/2005, 10h53
  5. Utilisation iterator avec une classe perso
    Par SteelBox dans le forum C++
    Réponses: 19
    Dernier message: 07/03/2005, 11h30

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