I've seen two different implementation of memento on .NET.
One is pretty straightforward - The object creates another instance of itself.
The other is serializing the object using BinaryFormatter and MemoryStream.
Which is the preferred method? Can anyone point out advantages/disadvantages of each approach?