private static void OrderTest() { Order order = Order.Create(); order.Completion(); if (order.Status == OrderStatus.Completion) { order.Status = OrderStatus.Sent; Console.WriteLine("Your order was sent."); } order.Cancel(); }
static void Main(string[] args) { IOrderState orderState = OrderStatusFactory.Carate(OrderStatus.New); Order order = new Order(orderState) { Id = 1, Customer = "zxj", OrderDate = DateTime.Now }; Console.WriteLine("当前状态:{0}", order.Status()); Console.WriteLine("状态改变:{0}", OrderStatus.Shipped); order.Ship(); Console.WriteLine("当前状态:{0}", order.Status()); order.Cancel(); Console.Read(); }