J'ai différentes versions de DLL pour mon application .NET et la plupart du temps je veux utiliser le dernier. Cependant, il existe une méthode que je lance sur un thread séparé où je dois être en mesure de sélectionner une ancienne version de la DLL en fonction de certains critères.Comment puis-je changer l'assembly .NET pour l'exécution d'une méthode?
J'ai appris qu'il n'est pas possible de charger un assemblage et de le décharger dans le domaine d'application par défaut (je ne peux pas garder les deux versions chargées car je rencontre des définitions de type
Probablement que je dois créer un AppDomain distinct, charger l'assemblage là-bas, puis le décharger. Ce domaine d'application n'exécuterait qu'une seule méthode sur un thread distinct et fonctionnerait avec une version différente de la bibliothèque.
Pensez-vous que c'est une bonne approche/avez-vous de meilleures idées/pouvez-vous me diriger vers une source qui me permettrait de démarrer?
Merci beaucoup;)
Merci pour l'exemple, cela a fonctionné pour moi et résolu mon problème de http: // stackoverflow.com/questions/2094487/how-can-i-use-workflows-with-older-versions-of-activity-libraries-in-rehosted-w/2108268#2108268 –
Typo? "ApplicationProxy" devrait être "RemoteProxy", ou vice-versa? – RenniePet
C'est vrai, @RenniePet; fixé –