public void Set(string state)
{
Console.WriteLine("Originator: Setting state to " + state);
this.state = 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(); }