Références

Signaler
Messages postés
38
Date d'inscription
lundi 5 janvier 2009
Statut
Membre
Dernière intervention
12 janvier 2011
-
Messages postés
38
Date d'inscription
lundi 5 janvier 2009
Statut
Membre
Dernière intervention
12 janvier 2011
-
Bonjour
j'ai un petit problème :
J'ai créé 2 library classes en visual studio(projet web, langage utilisé c#) chaque librairie contient une classe,(Library1 contient classe1, Library2 contient classe2),et chacune des deux classes appele l'autre.  

j'ai ajouté au debut de class1 cette ligne using espacenom2; , et j'ai ajouté dans références de Library1 : Library2
et j'ai essayé de faire la meme chose pour classe2 mais quand j'ajoute Library1 dans références de Library2 il n'accepte pas il m'affiche un message en disant qu'il y a une dépendance circulaire(autrement dit chaque librairie dépend de l'autre).

Maintenant je voudrais savoir comment peut-t-on faire pour résoudre ce problème

Merci d'avance.

2 réponses

Messages postés
794
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
19 août 2008
9
Avoir des dépendances cycliques traduit souvent un problème de conception. C'est techniquement possible de passer outre, mais j'aurai plutôt tendance à te conseiller de réfléchir a ton organisation de classes, pour voir s'il est normal que 2 librairie dépendent l'une de l'autre.

Appelons tes librairie A et B. Et en général, la conclusion est une des suivantes :
- Ces deux librairies sont tellement proche qu'il devrait logiquement s'agir que d'une seule librairie -> il faut alors fusionner ces librairies en 1 seule : "A" et "B" -> "AB".
- Ces deux librairies contiennent chacune une partie de code "générale", qui n'est pas spécifique à ces librairie (c'est ce cas le plus courant) -> il faut alors sortir ce code de la / les librairie(s) concernée(s) pour créer une troisième librairie : "A" et "B" -> "A", "B" et "C" (avec A et B qui référencent C, et eventuellement A qui référence B (ou l'inverse)).
- Ces deux librairies sont quand même intimement liée l'une a l'autre (ce qui est généralement rarement le cas) et tu peux dans ce cas couper tes librairies, pour passer de 2... a 4 librairie : "A" et "B" -> "A1", "A2", "B1", "B2", avec A1 qui référence B2, et B1 qui référence A2.

<hr size="2" width="100%" />Working as designed
Messages postés
38
Date d'inscription
lundi 5 janvier 2009
Statut
Membre
Dernière intervention
12 janvier 2011

merci