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 :

Ajouter un element a une list<T> contenue dans un Dictionnary.


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 43
    Par défaut Ajouter un element a une list<T> contenue dans un Dictionnary.
    Je créer un dictionnary a partir de ma classe "friend" qui possède comme key l'ID de mon ami.

    Voici ma classe "chat":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        public class Chat
        {
            public string name { get; set; }
            public string message { get; set; }
        }
    Voici ma classe "friend":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
        public class Friends
        {
            public string Friend_id { get; set; }
            public string Name { get; set; }
            public string Message { get; set; }
            public string FriendAvatar { get; set; }
            public string Status { get; set; }
            public string Status_Image { get; set; }
            public List<Chat> chat_list { get; set; }
        }
    Et voici ce a quoi je fais appel pour instancier le dictionnaire:

    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
    public Dictionary<string, Friends> GetFriend(test.ArrayOfString friend_info_tab)
            {
                Dictionary<string, Friends> temp_friend = new Dictionary<string, Friends>();
                int i = 1;
                int array_length;
     
                array_length = friend_info_tab.Count;
                if (array_length == 1)
                    Error_Display("Array Length = 1", "No friends reported");
                else if (array_length > 1)
                {
                    while (i < array_length)
                    {
                        temp_friend.Add(friend_info_tab[i], new Friends()
                        {
                            Friend_guid = friend_info_tab[i],
                            Name = friend_info_tab[i + 1],
                            Message = friend_info_tab[i + 2],
                            FriendAvatar = Get_avatar(friend_info_tab[i]),
                            Status = "0",
                            Status_Image = "URL",
                            chat_list = new List<Chat>(),
                        });
                        i = i + 3;
                    }
                }
                return temp_friend;
    Jusqu'à la rien d'incroyable et tout fonctionne correctement. La ou ca devient problematique c'est lorsque je souhaite ajouter un élément a ma liste chat_list de ma classe "friend".

    Voici comment j'essayais de procéder:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    friend_list[chat_friend_guid].chat_list.Add(new Chat() {name = "", message = ""});
    En temps normal je sais ajouter, insérer et retirer des éléments d'une liste, mais dans ce cas précis je n'arrive vraiment pas a comprendre comment y parvenir. Je suis conscient que ca peut paraitre idiot comme question et je suis sur que la réponse est toute simple mais même en cherchant je n'ai pas trouver.

    Merci d'avance.

  2. #2
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Par défaut
    Vu d'ici, ça a l'air correct. Quelle est l'erreur que tu rencontres ?
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 43
    Par défaut
    En redémarrant Visual Studio 2010 pour une autre raison, j'ai relancer mon application et cela semble fonctionner, allez comprendre pourquoi maintenant et pas tout a l'heure! Juste pour information l'erreur que j'avais est que VS me disait que ce que je rentrais comme paramètres étaient tous faux. Encore désolé pour ce poste qui n'aura pas servi a grand chose, mais qui sait il servira peut-être a une personne un jour.

    Cordialement, Ephismen.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. recuperer le nombre element d'une liste deroulante
    Par fallered dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 19/10/2005, 14h11
  2. cacher un element d'une liste deroulante
    Par fallered dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 18/10/2005, 15h46
  3. acceder au n iéme element d'une liste std::list
    Par sorari dans le forum SL & STL
    Réponses: 4
    Dernier message: 23/03/2005, 15h21
  4. selectionner le dernier element d'une liste box
    Par adilou1981 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 17/03/2005, 10h19

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