title: How to Serialize unserializable object in .NET
body: <p>I have 3-rd party dll. From that I receive an object of some type (I know its interface, but not all the object). That object is not marked as serializable and I'm not related to that libruary development at all. </p>
  
  <p>I want to serialize it to some storage and then receive it from storage with <strong>the same state later (public/private, references etc.)</strong>. I got here one option - make my own serialization mechanism that will act the same as .NET serializers with the only difference - it won't revise serialization attributes. </p>
  
  <p>Is that the best way? </p>
  
  <p>Thanks.</p>