Bonjour à tous,

Depuis une classe dérivant de MarshallByRefObject, je créé un domaine d'application temporaire, je charge des assemblys et j'instancie un type possédant l'attribut Serializable.

Mon souhait est de récupérer ce type instancié dans mon domaine principal.

Vous noterez que je souhaite utiliser le Marshalling par valeur et non par référence vu que je décharge mon domaine temporaire par la suite.

Donc je récupère bien l'ensemble des membres de mon type (string Title, Version version, Guid guid) dans mon domaine principal sauf mon objet Icon qui garde encore une référence à l'objet Icon du domaine temporaire.
J'ai donc une erreur pour utiliser mon objet Icon dans mon domaine principal une fois que j'ai déchargé mon domaine temporaire.

En regardant de plus près, cela est normal, vu que la classe Icon dérive de MarshallByRefObject.

Avez-vous une solution pour que je récupère une copie de mon objet Icon dans mon domaine principal et non une référence ?

Pour info, j'ai réglé le problème temporairement en sauvegardant mon Icon dans un MemoryStream et en créant un nouvel Icon depuis ce MemoryStream, mais je n'ai pas l'intention d'utiliser cette méthode en production

Je vous remercie d'avance