static void Main(string[] args) { using (TimeService service = new TimeService()) { ConsoleKey action; do { ConsoleKey opcion; int indexTiming; int index = 1; Guid entryGuid = new Guid(); Dictionary <int, Guid> indexDictionary = new Dictionary <int, Guid>(); Console.WriteLine("Select an option\n"); Console.WriteLine("1.- List of Timings"); Console.WriteLine("2.- Insert Timing"); Console.WriteLine("3.- Edit Timing"); Console.WriteLine("4.- Remove Timing"); Console.WriteLine("5.- Exit"); opcion = Console.ReadKey().Key; switch (opcion) { case ConsoleKey.D1: Console.Clear(); Console.WriteLine("TIMING\n"); foreach (var time in service.GetAll()) { Console.WriteLine($"{time.Id} => {time.DateTiming}"); } break; case ConsoleKey.D2: service.Create(DateTime.Now); Console.WriteLine("\nCREATED"); break; case ConsoleKey.D3: foreach (var time in service.GetAll()) { Console.WriteLine($"\n{index} => {time.Id} [ {time.DateTiming} ]"); indexDictionary.Add(index, time.Id); index++; } Console.WriteLine("\nSELECT THE INDEX"); indexTiming = int.Parse(Console.ReadKey().KeyChar.ToString()); indexDictionary.TryGetValue(indexTiming, out entryGuid); service.Update(entryGuid, DateTime.Now); Console.WriteLine("\nUPDATED"); break; case ConsoleKey.D4: foreach (var time in service.GetAll()) { Console.WriteLine($"\n{index} => {time.Id} [ {time.DateTiming} ]"); indexDictionary.Add(index, time.Id); index++; } Console.WriteLine("\nSELECT THE INDEX"); indexTiming = int.Parse(Console.ReadKey().KeyChar.ToString()); indexDictionary.TryGetValue(indexTiming, out entryGuid); service.Remove(entryGuid); Console.WriteLine("\nREMOVED"); break; case ConsoleKey.D5: Environment.Exit(0); break; } Console.WriteLine("SELECT ANOTHER ACTION - [Y|N]?"); action = Console.ReadKey().Key; Console.Clear(); } while (action != ConsoleKey.N); Console.WriteLine("PROGRAM WILL CLOSE, PLEASE PRESS ANY KEY!"); Console.ReadKey(); } }