Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Reference circulaire Projet1-->Projet2 et Projet2-->Projet1

2 réponses
Avatar
SL3News
Bonjour,
J'ai une solution avec deux projets : Projet1 et Projet2.
Projet1 contient les formulaires : Form11 et Form12
Projet1 contient les formulaires : Form21 et Form22
Je dois appeller Form21 (Projet2) à partir de Form11 (Projet1); ceci marche
en ajoutant une reference vers Projet2 à Projet1.
Mais je dois également appeler Form12 (Projet1) à partir de Form22
(Projet2); ceci ne marche malheureusement plus car VS ne me permet plus
d'ajouter une reference vers Projet1 à partir de Projet2 car ceci va créer
une référence circulaire.
Y-a-t-il une solution?
Merci d'avance.

2 réponses

Avatar
Gilles TOURREAU
Le Thu, 23 Aug 2007 09:48:14 +0200, SL3News a écrit:

Bonjour,
J'ai une solution avec deux projets : Projet1 et Projet2.
Projet1 contient les formulaires : Form11 et Form12
Projet1 contient les formulaires : Form21 et Form22
Je dois appeller Form21 (Projet2) à partir de Form11 (Projet1); ceci
marche
en ajoutant une reference vers Projet2 à Projet1.
Mais je dois également appeler Form12 (Projet1) à partir de Form22
(Projet2); ceci ne marche malheureusement plus car VS ne me permet plus
d'ajouter une reference vers Projet1 à partir de Projet2 car ceci va
créer
une référence circulaire.
Y-a-t-il une solution?
Merci d'avance.





Cela signifie une grosse erreur de conception dans l'organisation de vos
projets....
Il faut toujours organiser les dépendances des projets de façon
hierarchique.
En effet, VS est incapable de compiler le Projet2 sachant qu'il doit
compiler avant le Projet1 et Projet1 doit être compilé après Projet2...

Vous avez donc 2 solutions pour ce genre de problème :
- Vous mettez le tout dans un même projet (conseillé)
- Vous laissez la référence à Projet2 dans Projet1, et dans Projet2 vous
faites appel aux éléments de Projet1 via l'introspection (cf.
System.Reflections). Cette méthode ne permet pas de typer votre projet au
maximum et vous devrez détecter beaucoup d'erreurs à l'execution...
(Méthode déconseillé)

Cordialement

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Avatar
cpasmwalolo
La 3e solution est d'utiliser des interfaces que l'on définit dans un 3e
projet et qui serviront de lien entre les autres projects. Les interfaces ne
définiront que les propriétés et méthodes utiles a la communication entre
les 2 projets :-)

"SL3News" wrote in message
news:
Bonjour,
J'ai une solution avec deux projets : Projet1 et Projet2.
Projet1 contient les formulaires : Form11 et Form12
Projet1 contient les formulaires : Form21 et Form22
Je dois appeller Form21 (Projet2) à partir de Form11 (Projet1); ceci
marche en ajoutant une reference vers Projet2 à Projet1.
Mais je dois également appeler Form12 (Projet1) à partir de Form22
(Projet2); ceci ne marche malheureusement plus car VS ne me permet plus
d'ajouter une reference vers Projet1 à partir de Projet2 car ceci va créer
une référence circulaire.
Y-a-t-il une solution?
Merci d'avance.