public void AddPI() { if (_PIRepository.GetAll().Any()) { return; } var PIs = new List <PI> { new PI { Nom = "ISEN", Descriptif = "Ecole d'ingénieur", Categorie = _categorieRepository.Single("Ecole"), Adresse = _adresseRepository.Single("Place Georges Pompidou"), }, new PI { Nom = "Ma Cantine", Descriptif = "Restaurant de cuisine traditionnelle", Categorie = _categorieRepository.Single("Restaurant"), Adresse = _adresseRepository.Single("42 place Paul Flamencq"), } }; _PIRepository.UpdateRange(PIs); _PIRepository.Save(); }
public List <PointInteret> getListePointInterets() { // Liste des catégories StreamReader textReader = File.OpenText("../Isen.Dotnet.Library/Data/poi.csv"); var csv = new CsvReader(textReader); csv.Configuration.Delimiter = ","; List <PointInteret> pointInterets = new List <PointInteret>(); var i = 0; while (csv.Read()) { if (i == 0) { i++; continue; } // Récupère le nom du point d'intérêt string nom = csv.GetField <string>(0); // Récupère la description string description = csv.GetField <string>(1); // Récupère le nom la catégorie string nomCategorie = csv.GetField <string>(2); // Récupère le texte de l'adresse string texte = csv.GetField <string>(3); // Récupère le ZipCode string zipCode = csv.GetField <string>(4); // Récupère la longitude string longitude = csv.GetField <string>(5); // Récupère la latitude string latitude = csv.GetField <string>(6); // Récupère la commune string nomCommune = csv.GetField <string>(7); _logger.LogWarning(String.Format("{0} - {1} - {2} - {3} - {4} - {5} - {6}", nom, nomCategorie, texte, zipCode, longitude, latitude, nomCommune)); float floatLong = -1; float floatLat = -1; try { longitude = longitude.Replace(".", ","); latitude = latitude.Replace(".", ","); float.Parse(longitude); float.Parse(latitude); } catch (System.Exception) { // _logger.LogWarning("Unable to get 'longitude' or 'latitude'"); } // Création de la commune si besoin Commune commune = _communeRepository.Single(nomCommune); if (commune == null) { commune = new Commune(); commune.Nom = nomCommune; commune.Longitude = floatLong; commune.Latitude = floatLat; } _communeRepository.Update(commune); _communeRepository.Save(); // Création de l'adresse si besoin Adresse adresse = _adresseRepository.Single(texte); if (adresse == null) { adresse = new Adresse(); adresse.Texte = texte; adresse.ZipCode = zipCode; adresse.Longitude = floatLong; adresse.Latitude = floatLat; adresse.Commune = commune; } _adresseRepository.Update(adresse); _adresseRepository.Save(); // Création de la catégorie si besoin Categorie categorie = _categorieRepository.Single(nomCategorie); if (categorie == null) { categorie = new Categorie(); categorie.Nom = nomCategorie; } _categorieRepository.Update(categorie); _categorieRepository.Save(); // Création du point d'intérêt PointInteret pointInteret = _pointInteretRepository.Single(nom); if (pointInteret == null) { pointInteret = new PointInteret(); pointInteret.Nom = nom; pointInteret.Description = description; pointInteret.Categorie = categorie; pointInteret.Adresse = adresse; } pointInterets.Add(pointInteret); } return(pointInterets); }