Bonjour à tous,

Je suis en train de concevoir un programme en C# qui utilise des structures.

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
Exemple de structure :
        public struct Personne
        {
            public int id;
            public string name;

            public Personne(int id, string name)
            {
                this.name= name;
                this.id= id;
            }

            public int ID
            {
                get { return this.id; }
                set { this.id= value; }
            }

            public string Name
            {
                get { return this.name; }
                set { this.name= value; }
            }
        }
Je parviens bien à créer une instance de ma structure...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
 System.Collections.Generic.Dictionary<int, Personne> pers = new System.Collections.Generic.Dictionary<int, Personne>();
 pers.Add(1,new Personne(1,"toto");
... toutefois, je ne parviens pas à modifier les variables qui la compose :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
pers[1].ID = 2;
pers[1].Name = "titi";
Erreur : Impossible de modifier la valeur de retour de 'System.Collections.Generic.Dictionary<int, Personne>.this[int]', car il ne s'agit pas d'une variable.

Quelqu'un pourrait-il m'expliquer et/ou m'orienter vers une solution afin de pouvoir modifier les variables ?

Merci