public void AddCommunes() { if (_communeRepository.GetAll().Any()) { return; } _logger.LogWarning("Adding communes"); var m_commune = JsonConvert.DeserializeObject <dynamic>(File.ReadAllText("../Isen.DotNet.Library/Commune.json")); var communes = new List <Commune> { }; String dept; foreach (var m_com in m_commune.Communes) { dept = m_com.nom_département.ToString(); communes.Add(new Commune { Name = m_com.nom_commune.ToString(), Departement = _departRepository.Single(dept), Latitude = m_com.latitude.ToString(), Longitude = m_com.longitude.ToString() }); } _communeRepository.UpdateRange(communes); _communeRepository.Save(); _logger.LogWarning("Added communes"); }
public List <Commune> getListeCommunesPACA() { //Liste des communes de la région _logger.LogWarning("Importing 'communes' this might take a while..."); StreamReader textReader = File.OpenText("../Isen.Dotnet.Library/Data/OpenDataLight.csv"); var csv = new CsvReader(textReader); csv.Configuration.Delimiter = ";"; List <Commune> communes = new List <Commune>(); while (csv.Read()) { var strField = csv.GetField <string>(2); if (strField == "Provence-Alpes-Côte d'Azur") { var communeField = csv.GetField <string>(8); string nomDepartement = csv.GetField <string>(5); string longitude = ""; string latitude = ""; float floatLat = -1; float floatLong = -1; try { latitude = csv.GetField <string>(11); longitude = csv.GetField <string>(12); latitude = latitude.Replace(".", ","); longitude = longitude.Replace(".", ","); floatLat = float.Parse(latitude); floatLong = float.Parse(longitude); } catch (System.Exception) { //_logger.LogWarning("Cannot get 'longitude' or 'latitude'"); } Commune commune = new Commune(); Departement departement = _departementRepository.Single(nomDepartement); if (departement == null) { departement = new Departement(); departement.Nom = nomDepartement; _departementRepository.Update(departement); _departementRepository.Save(); } commune.Nom = communeField; commune.Longitude = floatLong; commune.Latitude = floatLat; commune.Departement = departement; commune.DepartementId = departement.Id; communes.Add(commune); // _logger.LogWarning(String.Format("Commune: {0} ({1} - {2})", communeField, floatLong, floatLat)); } } return(communes); }