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 :

Récupération valeur Dictionnary


Sujet :

C#

  1. #1
    Membre à l'essai
    Homme Profil pro
    Analyse système
    Inscrit en
    Février 2012
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2012
    Messages : 30
    Points : 11
    Points
    11
    Par défaut Récupération valeur Dictionnary
    Salut tout le monde, ce soir j'ai mal au front à cause du Dictionnary...

    Alors je vous explique le souci: j'utilise un websocketserver (serveur en C#) et client en HTML5 (mais ça on s'en fout)...

    Donc j'ai une liste d'appartement se mettant dans un dictionnary avec l'ID (unique), l'image, le nom et la catégorie et dans le site, tout cela s'affiche ! Donc il y a échange de "paquet" via socket ! J'en viens à mon pépin: lorsque je clique sur appartement (ou plutôt l'image), le site m'envoie l'ID de ce dernier sur la Console et avec la console, j'aimerais afficher "Appartement %NAME% cliqué" (grace à l'ID) ! Le souci c'est que je n'arrive à RIEN récupérer du tout !
    L'ID me revient pas, mais je ne sais qu'en faite

    Alors mes codes:
    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
    class RoomManager
        {
            public readonly Dictionary<uint, Room> _rooms;
     
            public RoomManager()
            {
                _rooms = new Dictionary<uint, Room>();
     
                AddRoom(new Room(1, "den.png", "The Den", 1));
                AddRoom(new Room(2, "disco.png", "Disco", 1));
                AddRoom(new Room(3, "brunch.png", "Brunch", 2));
                AddRoom(new Room(4, "disco.png", "Disco 2", 3));
                AddRoom(new Room(5, "den.png", "Disco", 2));
                AddRoom(new Room(6, "park.png", "The Park", 1));
                AddRoom(new Room(7, "park.png", "The Park", 3));
                AddRoom(new Room(8, "park.png", "The Park", 2));
                AddRoom(new Room(9, "brunch.png", "Brunch", 4));
            }
     
            public Dictionary<uint, Room> GetRooms()
            {
                return _rooms;
            }
     
     
            public bool AddRoom(Room room)
            {
                if (_rooms.ContainsKey(room.ID))
                {
                    return false;
                }
                _rooms.Add(room.ID, room);
                return true;
            }
     
     
     
        }
    Et le meilleurs:
    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
        class Room
        {
            public uint ID;
            public string Codename;
            public string Name;
            public int Category;
     
            public Room(uint id, string codename, string name, int category)
            {
                ID = id;
                Codename = codename;
                Name = name;
                Category = category;
            }
        }
    Donc en gros le ADD renvoie à une autre classe le stockant en variable ou je sais pas quoi, mais je comprendrais dès que j'aurais cette réponse à mon avis !

    Quelqu'un aurait-il une solution à me filer ? (Je veux afficher, via une class, void ou je ne sais quoi) le "Name" de la Room grace à l'ID (reçus en string data ou autre)

    Bien merci à toi qui va me répondre

  2. #2
    Max
    Max est déconnecté
    Expert éminent sénior

    Avatar de Max
    Homme Profil pro
    Artisan développeur
    Inscrit en
    Mai 2007
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Artisan développeur
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 954
    Points : 14 933
    Points
    14 933
    Par défaut
    Salut.

    Tu peux vérifier que ton ID existe via la méthode ContainsKey puis accéder à la Room correspondant à ton ID via l'indexeur []. Un exemple parmi d'autres :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dictionary<uint, Room> rooms = new Dictionary<uint, Room>();
    // ...
    uint givenID = 1;
    if (rooms.ContainsKey(givenID)) {
        Console.WriteLine("Room ID {0} - Name {1}", givenID, rooms[givenID].Name);
    }
    else {
        Console.WriteLine("No room with ID {0}.", givenID);
    }
    Liens utiles :


    Voilà .

  3. #3
    Candidat au Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

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

    Informations forums :
    Inscription : Avril 2014
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    bonjour, il faut tout d'abord verifier que tu consulte bien le meme dictionary. Essaie d'afficher le count pour etre sur qu'il y a bien des enregistrements. Si tu n'es pas certain de trouver ta cle lorsque tu accede au dictionary, urilise plutot TryGetValue plutot que contains combine a l'indexation.

Discussions similaires

  1. problème récupération valeur d'un "div"
    Par LE NEINDRE dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 29/06/2005, 10h04
  2. Pb avec les checkbox: tout sélectionner,récupération valeurs
    Par bubble_gum dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 28/10/2004, 17h42
  3. [Débutant][JSP]Récupération valeur de checkbox
    Par Crazyblinkgirl dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 01/09/2004, 09h16
  4. récupération valeur id auto incrément
    Par Jovial dans le forum Requêtes
    Réponses: 2
    Dernier message: 31/08/2004, 08h56
  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