示例#1
0
        static void Main(string[] args)
        {
            OrderContext context = new OrderContext();
            context.StateEnum = OrderStateEnum.WaitToReceive;
            context.ProceeOrder();


            context.StateEnum = OrderStateEnum.Finished;
            context.ProceeOrder();


            context.StateEnum = OrderStateEnum.Cancel;
            context.ProceeOrder();

            Console.ReadLine();
        }
示例#2
0
        static void Main(string[] args)
        {
            OrderContext context = new OrderContext();

            context.StateEnum = OrderStateEnum.WaitToReceive;
            context.ProceeOrder();


            context.StateEnum = OrderStateEnum.Finished;
            context.ProceeOrder();


            context.StateEnum = OrderStateEnum.Cancel;
            context.ProceeOrder();

            Console.ReadLine();
        }
示例#3
0
 /// <summary>
 /// 针对订单状态对订单进行处理
 /// </summary>
 /// <param name="context"></param>
 public virtual void Handle(OrderContext context)
 {
     if (context.StateEnum == this.CurrentState)
     {
         InnerHandle(context);
     }
     else
     {
         context.State = NextOrderState;
         context.ProceeOrder();
     }
 }
示例#4
0
 /// <summary>
 /// 针对订单状态对订单进行处理
 /// </summary>
 /// <param name="context"></param>
 public virtual void Handle(OrderContext context)
 {
     if (context.StateEnum == this.CurrentState)
     {
         InnerHandle(context);
     }
     else
     {
         context.State = NextOrderState;
         context.ProceeOrder();
     }
 }