public void Test() { var originator = new Originator(); var careTaker = new CareTaker(); originator.SetState("State #1"); careTaker.Add(originator.SaveStateToMemento()); originator.SetState("State #2"); careTaker.Add(originator.SaveStateToMemento()); originator.SetState("State #3"); careTaker.Add(originator.SaveStateToMemento()); System.Console.WriteLine("First Saved State: " + careTaker.Get(0).GetState()); System.Console.WriteLine("Current State: " + originator.GetState()); }
static void Main(string[] args) { Originator originator = new Originator(); CareTaker careTaker = new CareTaker(); originator.setState("State #1"); originator.setState("State #2"); careTaker.add(originator.saveStateToMemento()); originator.setState("State #3"); careTaker.add(originator.saveStateToMemento()); originator.setState("State #4"); Console.WriteLine("Current State: " + originator.getState()); originator.getStateFromMemento(careTaker.get(0)); Console.WriteLine("First saved State: " + originator.getState()); originator.getStateFromMemento(careTaker.get(1)); Console.WriteLine("Second saved State: " + originator.getState()); Console.ReadKey(); }