private static void CheckCurrencyResponse(ProductListVisualizer productListVisualizer) { ReDo: Console.Write("\nSelect Other Currency? [Y]/[N] "); var input = Console.ReadKey(); switch (input.Key) { case ConsoleKey.Y: //Currency Selection DisplayCurrenctyOptions(); CheckSelectedCurrency(); //end Managing Currency Selection break; case ConsoleKey.N: // case ConsoleKey.D2: break; default: Console.WriteLine("\nInvalid option!"); goto ReDo; } }
/// <summary> /// Getting the Product selection /// </summary> /// <param name="productListVisualizer"></param> /// <param name="shouldRun"></param> private static void ProductOption(ProductListVisualizer productListVisualizer, string strJson, bool shouldRun) { while (shouldRun) { Console.Write("Enter an option: "); var input = Console.ReadKey(); Console.WriteLine("\n"); switch (input.Key) { case ConsoleKey.NumPad1: //case ConsoleKey.D1: Console.WriteLine("You Choose option 1 - Print all products"); productListVisualizer.OutputAllProduct(strJson); //ask again for Currency choices. CheckCurrencyResponse(productListVisualizer); break; case ConsoleKey.NumPad2: // case ConsoleKey.D2: Console.WriteLine("Printing paginated products"); productListVisualizer.OutputPaginatedProducts(strJson, 4); //ask again for Currency choices. CheckCurrencyResponse(productListVisualizer); break; case ConsoleKey.NumPad3: //case ConsoleKey.D3: Console.WriteLine("Printing products grouped by price"); productListVisualizer.OutputProductGroupedByPriceSegment(strJson); //ask again for Currency choices. CheckCurrencyResponse(productListVisualizer); break; case ConsoleKey.Q: shouldRun = false; break; default: Console.WriteLine("Invalid option!"); break; } Console.WriteLine(); DisplayProductOption(); } }