static void Main(string[] args) { int choice = 7; Program p = new Program(); while (true) //loop för att hålla igång programmet { Console.Clear(); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Tompas Bil-Bibbla"); Console.Write(" "); Console.WriteLine("................."); Console.WriteLine(""); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Valj atgard i bil-bibblan:"); Console.Write(" "); Console.WriteLine(".........................."); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Valj 1 för att se alla bilar"); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Valj 2 för att lagga till en bil"); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Valj 3 för att ta bort en bil"); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Valj 4 för att andra en bils uppgifter"); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Valj 5 för att avsluta program"); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Valj vilken siffra som helst utom 5 for att aterga till denna meny"); Console.WriteLine(""); choice = p.CheckIfOnlyNumbers(); //kolla om inmatat värde är en siffra if (choice == 5) { p.KillProgram(); } switch (choice) { case 1: //visa alla bilar i bibblan using (CarServiceClient proxy = new CarServiceClient()) { List <Car> Cars = proxy.GetCars().ToList(); int numOfCars = Cars.Count; Console.Clear(); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Bil-Bibblan"); Console.Write(" "); Console.WriteLine("..........."); Console.WriteLine(""); for (int z = 0; z <= numOfCars - 1; z++) { Console.Write(" "); Console.WriteLine("CarId: " + Cars[z].Id); Console.Write(" "); Console.WriteLine("Brand: " + Cars[z].Brand); Console.Write(" "); Console.WriteLine("Model: " + Cars[z].Model); Console.Write(" "); Console.WriteLine("Year: " + Cars[z].Year); Console.WriteLine(""); } } break; case 2: //Lägga till en bil till bibblan using (CarServiceClient proxy = new CarServiceClient()) { Car newCar = new Car(); string newCarMarke = ""; string newCarModell = ""; int newCarAr = 0; Console.Clear(); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Lagga till en bil"); Console.Write(" "); Console.WriteLine("................."); Console.WriteLine(""); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Mata in nya bilens marke"); Console.Write(" "); newCarMarke = Console.ReadLine(); newCar.Brand = newCarMarke; Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Mata in nya bilens modell"); Console.Write(" "); newCarModell = Console.ReadLine(); newCar.Model = newCarModell; Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Mata in nya bilens tillverkningsar"); newCarAr = p.CheckIfOnlyNumbers(); //checka om siffra newCar.Year = newCarAr; proxy.Add(newCar); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("En ny bil ar tillagd i bibblan"); } break; case 3: //ta bort en bil från bibblan using (CarServiceClient proxy = new CarServiceClient()) { int removeCarId = 0; Console.Clear(); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Ta bort en bil"); Console.Write(" "); Console.WriteLine(".............."); Console.WriteLine(""); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Amge id for den bil som skall tas bort fran bibblan"); Console.Write(" "); removeCarId = int.Parse(Console.ReadLine()); List <Car> Cars = proxy.GetCars().ToList(); int numOfCars = Cars.Count; for (int z = 0; z <= numOfCars - 1; z++) { if (Cars[z].Id == removeCarId) { proxy.Delete(Cars[z]); Console.WriteLine(""); Console.Write(" "); Console.WriteLine($"Bil med id {removeCarId} har tagits bort fran bibblan"); Console.WriteLine(""); } } } break; case 4: //uppdatera en bil från bibblan using (CarServiceClient proxy = new CarServiceClient()) { int updateCarId = 0; string updateCarMarke = ""; string updateCarModell = ""; int? updateCarAr = 0; int updateCarArINT = 0; Console.Clear(); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Andra en bils uppgifter"); Console.Write(" "); Console.WriteLine("......................."); Console.WriteLine(""); Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Ange id for den bil som skall uppdateras i bibblan"); Console.Write(" "); updateCarId = int.Parse(Console.ReadLine()); List <Car> Cars = proxy.GetCars().ToList(); int numOfCars = Cars.Count; for (int z = 0; z <= numOfCars - 1; z++) { if (Cars[z].Id == updateCarId) { Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Uppdatera bilens marke?"); Console.Write(" "); updateCarMarke = Console.ReadLine(); if (updateCarMarke != "") { Cars[z].Brand = updateCarMarke; } Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Uppdatera bilens modell?"); Console.Write(" "); updateCarModell = Console.ReadLine(); if (updateCarModell != "") { Cars[z].Model = updateCarModell; } Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Uppdatera bilens tillverkningsar?"); Console.Write(" "); if (int.TryParse(Console.ReadLine(), out updateCarArINT)) { updateCarAr = (int?)updateCarArINT; } if (updateCarAr != null & updateCarArINT != 0) { Cars[z].Year = updateCarArINT; } proxy.Update(Cars[z]); Console.WriteLine(""); Console.Write(" "); Console.WriteLine($"Bil med id {updateCarId} har uppdaterats i bibblan"); Console.WriteLine(""); } } } break; } //sweitch-sats slutar här Console.WriteLine(""); Console.Write(" "); Console.WriteLine("Avsluta? Tryck 5. Till meny? Vilken siffra som helst utom 5"); choice = p.CheckIfOnlyNumbers(); //kolla om inmatat värde är en siffra if (choice == 5) { p.KillProgram(); } } //program-loop slutar här } //Main slutar här