private static void RunStatePattern() { var context = new Context(); context.SetState(new ConcreteStateA(context)); context.Request(5); context.Request(15); context.Request(25); context.Request(35); Console.Read(); }
static void Main(string[] args) { // Setup context in a state Context c = new Context(new ConcreteStateA()); // Issue requests, which toggles state c.Request(); c.Request(); c.Request(); c.Request(); Console.ReadLine(); }