public Memento SaveToMemento()
{
Console.WriteLine("Originator: Saving to Memento.");
return new Memento(state);
}
public static void Main(String[] args) { Caretaker caretaker = new Caretaker(); Originator originator = new Originator(); originator.Set("State1"); originator.Set("State2"); caretaker.AddMemento(originator.SaveToMemento()); originator.Set("State3"); caretaker.AddMemento(originator.SaveToMemento()); originator.Set("State4"); originator.RestoreFromMemento(caretaker.GetMemento(1)); Console.ReadLine(); }