Example #1
0
        void RunSubMenu(Garage <Vehicle> garage, int selected)
        {
            Console.Clear();
            switch (selected)
            {
            case 2:
                addVehicle(garage);
                break;

            case 3:
                Console.Write("Enter regNr for the Vehicle to remove: ");
                string regNr  = Console.ReadLine();
                bool   result = garage.removeVehicle(regNr);
                if (result)
                {
                    Console.WriteLine("Vehicle was successfully removed");
                }
                else
                {
                    Console.WriteLine("No vehicle matched criteria: " + regNr);
                }
                Console.ReadKey();
                break;

            case 1:
                Console.Clear();
                Print(garage);
                break;

            case 4:
                /*  var query = from g in garage
                 *            group g by garage.GetType() into lettergroup
                 *            orderby lettergroup.Key ascending
                 *            select lettergroup;*/
                var query = from g in garage
                            group g by g.GetType();

                foreach (var group in query)
                {
                    Console.WriteLine(group.Key.ToString().Substring(22) + " Antal: " + group.Count());
                    //foreach(var vehicle in group) Console.WriteLine(vehicle.ToString());
                }

                /*
                 * string[] vehicleTypes = { "Airplane", "Motorcycle", "Car", "Bus", "Boat" };
                 * int listSize = vehicleTypes.Length;
                 * int[] countArray = new int[listSize];
                 *
                 * foreach (Vehicle v in garage) {
                 *  //Console.WriteLine(v.GetType());
                 *  for (int i = 0; i < listSize; i++) {
                 *      if (v.GetType().ToString().Equals("GarageV1._0Skelleftea." + vehicleTypes[i])) countArray[i] += 1;
                 *  }
                 * }
                 *  Console.Clear();
                 *  for (int i = 0; i < listSize; i++)
                 *  Console.WriteLine(vehicleTypes[i] + "   antal: " + countArray[i]);
                 */
                Console.ReadKey();

                break;

            case 5:
                Console.Clear();
                Console.Write("Enter regNr for Vehicle to find: ");
                regNr = Console.ReadLine();
                IEnumerable <Vehicle> res = garage.searchVehicle(regNr);
                if (res.Count() == 0)
                {
                    Console.WriteLine("No vehicle was found matching regnr: {0}", regNr);
                }
                else
                {
                    foreach (Vehicle v in res)
                    {
                        Console.WriteLine(v.RegNr + " : " + v.GetType());
                    }
                }
                Console.ReadKey();
                break;

            case 6:
                return;

            default:
                break;
            }
        }