static void Main(string[] args) { var order = new Order { Origin = new Address { ContactName = "José da Silva", Country = "Brasil", City = "São José do Rio Preto", PostalCode = "15050-132", AddressLine1 = "Rua XXX" }, Destination = new Address { ContactName = "Lucas Palhares", Country = "Brasil", City = "São José do Rio Preto", PostalCode = "15050-130", AddressLine1 = "Rua ABC" } }; var service = new CostCalculationService_WithStrategy(new FedexShippingStrategy()); var cost = service.CalculateShippingCost(order); Console.WriteLine(cost); Console.ReadKey(); }
public void TryStrategyPattern() { var newOrder1 = new MyOrder { ShippingMethod = ShippingOpteions.FedEx }; var newOrder2 = new MyOrder { ShippingMethod = ShippingOpteions.UPS }; var newOrder3 = new MyOrder { ShippingMethod = ShippingOpteions.Schenker }; var shippingCostService = new CostCalculationService_WithStrategy(); var shippingPrice1 = shippingCostService.CalculateShippingCost(newOrder1); var shippingPrice2 = shippingCostService.CalculateShippingCost(newOrder2); var shippingPrice3 = shippingCostService.CalculateShippingCost(newOrder3); Console.WriteLine(shippingPrice1); Console.WriteLine(shippingPrice2); Console.WriteLine(shippingPrice3); }