// Stores (serializes) memento public Memento SaveMemento() { Console.WriteLine("\nSaving state --\n"); Memento memento = new Memento(); return memento.Serialize(this); }
// Restores (deserializes) memento public void RestoreMemento(Memento memento) { Console.WriteLine("\nRestoring state --\n"); SalesProspect s = (SalesProspect)memento.Deserialize(); this.Name = s.Name; this.Phone = s.Phone; this.Budget = s.Budget; }