Bonjour,

Je souhaite effectuer une deepcopy d'une classe qui n'est pas défini par mes soins (Viewport3D : https://msdn.microsoft.com/fr-fr/lib...vs.110%29.aspx). En retournant l'interdent mondial j'ai trouvé quelques solutions ex :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
IFormatter formatter = new BinaryFormatter();
Stream stream = new MemoryStream();
using (stream)
{
   formatter.Serialize(stream, source);
   stream.Seek(0, SeekOrigin.Begin);
   return (T)formatter.Deserialize(stream);
}
Le problème est que cette classe n'est pas serializable donc la solution n'est pas utilisable. Du coup comment puis-je faire ? A priori je ne peux pas "rendre une classe serializable"car si elle ne l'est pas c'est que certaines variables ne peuvent pas être stocker en tant que texte ?
De ce que j'ai lu je pourrais ajouter une "etension" à la classe pour y mettre une méthode qui copierait les items un a un.. Y a t-il une meilleure solution ?

Merci d'avance !