Given the following class:
class A
{
    public List<B> ListB;
    // etc...
}
where B is another class that may inherit/contain some other classes.
Given this scenario:
- Ais a large class and contains many reference types
- I cannot mark Bas[Serializable]as I don't have access to source code ofB
The following methods to perform deep copying do not work:
- I cannot use ICloneableorMemberwiseCloneas classAcontains many reference types
- I cannot write a copy constructor for A, as the class is large and continuously being added to, and contains classes (likeB) that cannot be deep copied
- I cannot use serialization as I cannot mark a contained class (like B, where no source code available) as[Serializable]
How can I deep copy class A?
 
     
     
     
     
     
     
     
     
    