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

C# Discussion :

Enum et methode à plusieurs parametres d'entrée.


Sujet :

C#

  1. #1
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 26
    Par défaut Enum et methode à plusieurs parametres d'entrée.
    Bonjour,

    Je suis entrain d'implementer une methode qui est censée ramener plusieurs 'int'.
    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    public class ScoreCard
        {
            public int residentialscore;
            public int maritalscore;
            public int agescore;
            public int personalscore;
     
            public ScoreCard()
            {
            }
     
            [Flags]
            public enum resStatus
            {
                owner_with_mortgage = 10,
                owner_with_no_mortgage = 40,
                renting = 10,
                living_with_parents = 20
            }
     
            [Flags]
            public enum marStat
            { 
                single	= 10,
                married = 30,
                seperated =	10,
                divorced =	0,
            }
     
            public int SetScore(string res, string mar, out int score )
            {
     
               try
               {
                   if (res == Convert.ToString(resStatus.owner_with_mortgage))
                   {
                        int r = (int)resStatus.owner_with_mortgage;
                        residentialscore = r;
                    }
                    if (res == Convert.ToString(resStatus.renting))
                    {
                        int r = (int)resStatus.renting;
                        residentialscore = r;
                    }
                    if (res == Convert.ToString(resStatus.living_with_parents))
                    {
                        int r = (int)resStatus.living_with_parents;
                        residentialscore = r;
                    }
                    if (res == Convert.ToString(resStatus.owner_with_no_mortgage))
                    {
                        int r = (int)resStatus.owner_with_no_mortgage;
                        residentialscore = r;
                    }
                    if (mar == Convert.ToString(marStat.single))
                    {
                        int m = (int)marStat.single;
                        maritalscore = m;
                    }
                    if (mar == Convert.ToString(marStat.married))
                    {
                        int m = (int)marStat.married;
                        maritalscore = m;
                    }
                    if (mar == Convert.ToString(marStat.seperated))
                    {
                        int m = (int)marStat.seperated;
                        maritalscore = m;
                    }
     
                   personalscore= score = residentialscore + maritalscore;
                }
                finally
                {
                } return score;
            }
     
        }
    Le probleme c'est que le compilateur ne passe dans l'enum que si la valeur de mar = divorced ou married.
    d'ailleurs je vois que pour 'single' et 'seperated', la valeur n'est as numérique mais 'single',
    alors que pour married quand je passe la souris sur marsStat.married, je vois 30.
    Est-ce que vous voyez ou est l'erreur ?
    Je me demande meme si c'est possible de traiter deux parametres sur deux enum differentes dans la meme methode

    Merci d'avance

  2. #2
    Membre Expert


    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 970
    Par défaut
    Yep,

    Ton code est illisible, pourrais tu penser à l'indenter ;-)
    Articles sur les technologies .NET

    Une réponse vous a aidé ? utilisez le bouton

    Votre problème est résolu ? utilisez le bouton

  3. #3
    Membre Expert


    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 970
    Par défaut
    J'ai pas encore analyser ton soucis, par contre je peux faire une ou deux petites remarques constructives pour améliorer entre autre la lisibilité :

    Pourquoi passer le paramètre score avec le mot clé out si c'est pour faire un return :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public int SetScore(string res, string mar, out int score )
    ...
    return score;
    Tu déclares toujours une variable pour rien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    int m = (int)marStat.single;
    maritalscore = m;
    Tu pourrais juste faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    maritalscore = (int)marStat.single;
    Pour le reste je vais regarder l'aprem ;-)
    Articles sur les technologies .NET

    Une réponse vous a aidé ? utilisez le bouton

    Votre problème est résolu ? utilisez le bouton

  4. #4
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 26
    Par défaut
    Désolée, je ne peux pas l'indenter dans l'editeur de message sur le site :/

    Merci je vais changer les variables.

    j'avais changé la fin de mon message, je ne sais pas si vous avez vu.

    Le probleme c'est que le compilateur ne passe dans l'enum que si la valeur de mar = divorced ou married.
    d'ailleurs je vois que pour 'single' et 'seperated', la valeur n'est as numérique mais 'single',
    alors que pour married quand je passe la souris sur marsStat.married, je vois 30.

    Merci beaucoup (une rapidité de réponse incroyable sur ce forum)

  5. #5
    Membre Expert


    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 970
    Par défaut
    pour tes tests dans tes if essaie un peu ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if (res.Equals(Convert.ToString(resStatus.living_with_parents)))
    Sinon tu dois prendre ta fonction en debug et voir le contenu de tes variables à chaque fois.
    Articles sur les technologies .NET

    Une réponse vous a aidé ? utilisez le bouton

    Votre problème est résolu ? utilisez le bouton

  6. #6
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 26
    Par défaut
    J'ai essayé ça avec 'mar' sur 'marStat' pour single, puisque c'est là qu'est le probleme, mais la compilateur saute les lignes dans les crochets et passe de 'if' en 'if'.
    Images attachées Images attachées  

  7. #7
    Membre Expert


    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 970
    Par défaut
    peux tu rajouter un exemple d'appel de ta méthode (avec des valeurs valables) ou un petit projet de test pour que je puisse analyser cela
    Articles sur les technologies .NET

    Une réponse vous a aidé ? utilisez le bouton

    Votre problème est résolu ? utilisez le bouton

  8. #8
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 26
    Par défaut
    Alors il y a d'abord un appel dans le winform
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     public void button1_Click(object sender, EventArgs e)
            {
                try
                {
                    scorecardmanager = new Score_CardManager( );
                    scorecardmanager.setScore(textBox4.Text, textBox3.Text);
                    textBox1.Text = Convert.ToString(this.scorecardmanager.ascoreCard.personalscore);
    qui appelle une autre methode dans le scorecard manager :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
       public int setScore(string res,string mar)
           {
               int score;
               ascoreCard = new ScoreCard();
               int resscore = ascoreCard.SetScore(res,mar, out score);
               return resscore;
    }
    qui enfin appelle cette methode la :
    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    public int SetScore(string res, string mar, out int score )
            {
     
                try
                {
                    if (res == Convert.ToString(resStatus.owner_with_mortgage))
                    {
                        residentialscore= (int)resStatus.owner_with_mortgage;
     
                    }
                    if (res == Convert.ToString(resStatus.renting))
                    {
     
                       residentialscore     = (int)resStatus.renting;
     
                    }
                    if (res == Convert.ToString(resStatus.living_with_parents))
                    {
     
                       residentialscore     = (int)resStatus.living_with_parents;
     
                    }
                    if (res == Convert.ToString(resStatus.owner_with_no_mortgage))
                    {
     
                          residentialscore   = (int)resStatus.owner_with_no_mortgage;
     
                    }
                    if ( mar.Equals(Convert.ToString(marStat.single)))
                    {
                          maritalscore= (int)marStat.single;
     
                    }
                    if (mar == Convert.ToString(marStat.married))
                    {
                       maritalscore  = (int)marStat.married;
     
                    }
                    if (mar == Convert.ToString(marStat.seperated))
                    {
                        maritalscore= (int)marStat.seperated;
     
                    }
                    if (mar == Convert.ToString(marStat.divorced))
                    {
                       maritalscore  = (int)marStat.divorced;
     
                    }
     
                   personalscore= score = residentialscore + maritalscore;
                }
                finally
                {
                } return personalscore;
            }
    dans le scorecard (bo)

  9. #9
    Membre Expert


    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 970
    Par défaut
    D'accord,

    et un exemple de ce que peux contenir les 2 variables TextBox :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    scorecardmanager.setScore(textBox4.Text, textBox3.Text);
    Avec si possible des valeurs qui devraient fonctionner
    Articles sur les technologies .NET

    Une réponse vous a aidé ? utilisez le bouton

    Votre problème est résolu ? utilisez le bouton

  10. #10
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 26
    Par défaut
    Et bien textbox4.Text = renting
    et textbox3.Text= single

  11. #11
    Membre Expert


    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 970
    Par défaut
    J'ai compris ton soucis :

    dans ton énumération ci dessous, tu affectes plusieurs fois les mêmes valeurs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    [Flags]
            public enum resStatus
            {
                owner_with_mortgage = 10,
                owner_with_no_mortgage = 40,
                renting = 10,
                living_with_parents = 20
            }
    Dans ce cas, le dernier item de l'énumération à prendre la valeur 10 est renting.

    quand tu fais un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Convert.ToString(resStatus.owner_with_mortgage)
    tu récupères la string équivalente à 10, dans ce cas il te renvoie "renting" car c'est le dernier item à être associé à 10 (il a écrasé "owner_with_mortgage").

    Si tu effectue un test avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
      [Flags]
            public enum resStatus
            {
                owner_with_mortgage = 10,
                owner_with_no_mortgage = 20,
                renting = 30,
                living_with_parents = 40
            }
    Ton code fonctionnera.

    Désolé que cela m’ait pas sauté aux yeux plutôt mais je n'utilise jamais les énumération comme cela. Par contre j'ai encore appris un truc grâce à toi ;-) ([Flags])
    Articles sur les technologies .NET

    Une réponse vous a aidé ? utilisez le bouton

    Votre problème est résolu ? utilisez le bouton

  12. #12
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 26
    Par défaut


    Mais du coup, je me disais bien qu'il y avait un souci avec les valeurs similaires.
    Seulement je suis obligée de faire ça comme ça parce que c'est le meme score . Du coup j'avais essayé
    "renting, owner_with_mortgage = 10,"
    et renting = owner_with_mortgage = 10...
    Mais ça ne marche pas non plus .

  13. #13
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 26
    Par défaut
    Puis à vrai dire, cela marche pour les details de residence, mais le probleme surtout c'est que le compilateur ne rentre pas dans les crochets des marStat..
    enfait j'ai essayé avec single = seperated = 10.

  14. #14
    Membre Expert


    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 970
    Par défaut
    En utilisant les énumérations tu aurais toujours le soucis, une valeur pour un item ...

    Ou alors tu utilises une collection (sortedList ou autres) dans lesquelles tu peux mettre une association clé valeur.

    Maintenant une autre question, dans tes zones de texte , je suppose que les valeurs doivent absolument correspondre aux textes des Items de tes scores ?
    Articles sur les technologies .NET

    Une réponse vous a aidé ? utilisez le bouton

    Votre problème est résolu ? utilisez le bouton

  15. #15
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 26
    Par défaut
    Oui, c'est pour ça que je voulais utiliser les Enum, pour pouvoir comparer.
    Enfait les réponses dans les textbox viennent d'une base de données.

    Je n'avais pas pensé aux listes ! Enfait je ne comprends pas bien comment s'en servir.

    Du coup j'ai fait une table avec tous les scores possibles et je dois implementer toutes les comparaisons.

    Je peux mettre ce sujet en résolu, non ? puisque les Enum ne peuvent pas avoir plusieurs Item avec la meme valeur numérique...

    Pourquoi la derniere question ?

    Bonne soirée

  16. #16
    Membre Expert


    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 970
    Par défaut
    En fait si comme je le pensais tes valeurs qui peuvent être encodées dans une textbox sont finalement des valeurs "connues", je pense que tu devrais utiliser des ComboBox en lieu et place des TestBox. En effet tu seras sure que l'utilisateur rentrera bien des valeurs "permisses"
    Articles sur les technologies .NET

    Une réponse vous a aidé ? utilisez le bouton

    Votre problème est résolu ? utilisez le bouton

  17. #17
    Membre Expert Avatar de DonQuiche
    Inscrit en
    Septembre 2010
    Messages
    2 741
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 2 741
    Par défaut
    D'après ce que j'ai compris le problème ici est de déterminer la valeur numérique associée à une certaine chaîne ? C'est un boulot pour un dictionnaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    var residentialStatuses = new Dictionary<string, int>();
    residentialStatuses.Add("owner_with_no_mortgage", 40);
    residentialStatuses.Add("owner_with_mortgage", 10);
    residentialStatuses.Add("living_with_parents", 20);
    residentialStatuses.Add("renting", 10);
     
    int residentialScore = residentialStatuses[res];
    Ce code est propre, rapide (si le dico est instancié une fois pour toutes en amont), il n'instancie pas inutilement des chaînes de caractères à chaque fois (contrairement à Convert.ToString) et en bonus on aura une exception si l'argument fourni n'est pas dans les tables (utiliser TryGetValue si on ne veut pas d'exception).


    Enfin un petit commentaire : en utilisant les énumérations l'intention était bonne. Mais le boulot des énumérations c'est d'offrir une vérification à la compilation. En revanche ce n'est pas le bon outil pour les vérifications à l'exécution.

  18. #18
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 26
    Par défaut
    Elles le sont,
    enfait tout ça ce sont des valeurs ramenées par l'entrée d'un identifiant par l'administrateur Mais merci du conseil !

    Tu fais du développement web ?
    Tu pourrais jetter un coup d'oeil ici : http://www.developpez.net/forums/d13...chez-l-erreur/



    Je ne comprends pas ce qu'il y a

  19. #19
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 26
    Par défaut
    Don Quichotte, tu penses que c'est plus propre d'utiliser un dictionnaire plus qu'une table dans la base ?

    A l'heure actuelle je fais ca :
    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
    24
    25
    26
     public int setScore(string res,string mar)
           {
     
     
     
               try
               {
     
                   if (res == Convert.ToString("renting"))
                   {
                       resScore = ascoreCard.renting_score;  
                   }
     
                   if (res == Convert.ToString("living with parents"))
                   {
                       resScore = ascoreCard.living_with_parent_score;
                   }
     
               }
               finally
               {
                   ascoreCard.residentialscore = resScore;
               }
                      return resScore;
     
           }
    Et il me reste a implementer ca pour chaque réponse possible pour tout les sous-scores ( 49 en tout), regroupés en 6 scores principaux, (donc je pense que je vais changer Setscore() pour setresidential(), setmarital(), setfinancial() et faire un setscore() qui additionne tout.

    La meilleure solution c'est quoi ?

  20. #20
    Membre Expert Avatar de DonQuiche
    Inscrit en
    Septembre 2010
    Messages
    2 741
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 2 741
    Par défaut
    Citation Envoyé par linBlinG Voir le message
    Don Quichotte, tu penses que c'est plus propre d'utiliser un dictionnaire plus qu'une table dans la base ?
    Je ne vois pas de raison de passer par une base de données qui est plus lourde et nécessitera une syntaxe plus complexe.

    La seule raison qui justifierait ça à mon sens serait que la personne qui doit ajuster ces coefficients est familière de l'édition manuelle de la base de données. Dans ce cas on lui donne l'outil auquel elle est habituée.

    Par contre on peut vouloir regrouper les constantes à un endroit unique du code (rend plus facile l'ajustage de l'algorithme mais complique la lecture du code). Ou fournir un fichier de configuration externe pour des non-programmeurs. Mais dans ces deux cas on en reviendra sans doute à créer un dictionnaire, simple et élégant.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 7
    Dernier message: 08/04/2013, 10h01
  2. Passage de plusieurs parametre entre winform
    Par lasrevinu dans le forum C#
    Réponses: 2
    Dernier message: 11/05/2010, 16h39
  3. [VB] Passer plusieurs parametres à une procedure stockée
    Par wolflinger dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 19/04/2005, 14h13
  4. Réponses: 5
    Dernier message: 12/05/2004, 16h37
  5. procedures/fonctions stockees : renvoi de plusieurs parametr
    Par Spoutnik dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 11/05/2004, 11h53

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