public ActionResult AddFlights() { try { AiportsDb Airports = new AiportsDb(); var AirportsList = Airports.GetAirports().ToList(); ; int nbAirports = AirportsList.Count; List<Flight> FlightsList = new List<Flight>(); Random rnd = new Random(); int i = 0; int nbFlights = 20000; while (i < nbFlights) { int departureIdx = rnd.Next(0, nbAirports); int arrivalIdx = rnd.Next(0, nbAirports); int DepartureAirportId = AirportsList[departureIdx].Id; int ArrivalAirportId = AirportsList[arrivalIdx].Id; while (departureIdx == arrivalIdx) arrivalIdx = rnd.Next(0, nbAirports); Flight f = new Flight() { DepartureAirportId = DepartureAirportId, ArrivalAirportId = ArrivalAirportId }; Flight f2 = new Flight() { DepartureAirportId = ArrivalAirportId, ArrivalAirportId = DepartureAirportId }; if(!FlightsList.Contains(f)) { FlightsList.Add(f); FlightsList.Add(f2); i++; } } bool done = Airports.AddFlights(FlightsList); if (done) ViewBag.Message = nbFlights * 2 + " vols ont été ajoutés"; else ViewBag.Message = "Erreur dans l'ajout des vols"; } catch (Exception e) { ViewBag.Message = e.Message; } return View("~/Views/Admin/Index.cshtml"); }