Bonjour,
Je travaille sur une solution C# où il y a plusieurs couches.
Une de mes classes (dans une couche basse) a une liste privée, et j'aimerais donner cette liste à une classe (dans une couche haute).
Mais je ne veux pas que la classe dans la couche haute puisse modifier cette liste.
Voici un exemple de code pour la couche haute :
Voici un exemple de code la couche basse :
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 Haute { public static void Main() { List<Element> maListe = Basse.GetList(); DataGrid dg = new DataGrid(); dg.DataSource = maListe; ... maListe.Add(Element); // <-- NON ! Je ne veux pas autoriser ça ! } }
L'intérêt de partager une liste comme ceci est que lorsque la couche basse modifie la liste, les modifications sont automatiquement répercutées sur la couche haute.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public static class Basse { private static List<Element> uneListe = new List<Element>(); public static List<Element> GetList() { return uneListe; } ... }
Mais je ne veux pas que la couche haute puisse modifier cette liste qui est private à la classe de la couche basse.
Est-ce possible ?
piloupy
Partager