/// <summary> /// Permet de récupérer toutes les données issues du fichier csv election_municipale_2014 /// </summary> public static void recuperationDesDonnees(MainWindow pagePrincipale) { Candidat[] candidat = new Candidat[5]; Departement dept = new Departement(); Commune comm = new Commune(); stats_election stat = new stats_election(); Parti[] parti = new Parti[5]; Liste[] list = new Liste[5]; calcul_sieges[] csieges = new calcul_sieges[5]; election[] elect = new election[5]; bool leDepartementExiste; AnneeElection year = new AnneeElection(); year.annee = 2014; year.insertionAnnee(); string[][] allData = lireToutesLesDonnees(); //Lire toutes les données depuis le fichier csv et les stocker dans allData for (int i = 1; i < allData.Length; i++) { reinitialisationTableauDeDonnees(candidat, parti, list, csieges, elect); comm.reinitialisationCommune(); dept.reinitialisationDepartement(); stat.reinitialisationStatsElection(); for (int colonne = 0; colonne < 75; colonne++) { //La première ligne i = 0 n'est pas insérée car c'est le titre des colonnes if (i > 0) { switch (colonne) { //code du département case 1: //Si le département n'existe pas, on modifie la classe Departement leDepartementExiste = leDepartementExisteDeja(Convert.ToSByte(allData[i][colonne])); if (!leDepartementExiste) { dept.code_du_departement = Convert.ToSByte(allData[i][colonne]); } //comm.Departement = new Departement(); //comm.Departement.code_du_departement = Convert.ToSByte(allData[i][colonne]); ; break; //type du scrutin case 2: break; //libelle_du_departement case 3: leDepartementExiste = leDepartementExisteDeja(Convert.ToSByte(allData[i][1])); if (!leDepartementExiste) { dept.libelle_du_departement = allData[i][colonne]; } //comm.Departement.libelle_du_departement = allData[i][colonne]; break; //code de la commune case 4: if (allData[i][colonne] == "") { comm.code_de_la_commune = "vide"; } comm.code_de_la_commune = allData[i][colonne]; break; //libelle_de_la_commune case 5: comm.libelle_de_la_commune = allData[i][colonne]; break; //insee case 6: comm.insee = allData[i][colonne]; break; //geo_point_2 case 7: comm.geo_point_2d = allData[i][colonne]; break; //geo_shape case 8: comm.geo_shape = allData[i][colonne]; break; //inscrits case 9: stat.inscrits = Convert.ToInt32(allData[i][colonne]); break; //abstentions case 10: stat.abstentions = Convert.ToInt32(allData[i][colonne]); break; //votants case 12: stat.votants = Convert.ToInt32(allData[i][colonne]); break; //blancs_et_nuls case 14: stat.blancs_et_nuls = Convert.ToInt32(allData[i][colonne]); break; //exprimes case 17: stat.exprimes = Convert.ToInt32(allData[i][colonne]); break; //code_nuance case 20: parti[0].code_nuance = allData[i][colonne]; break; //sexe_01 case 21: candidat[0].sexe = allData[i][colonne]; break; //nom_01 case 22: candidat[0].nom = allData[i][colonne]; break; //prenom_01 case 23: candidat[0].prenom = allData[i][colonne]; break; //liste_01 case 24: list[0].nomListe = allData[i][colonne]; break; //sieges_elu_01 case 25: csieges[0].sieges_elus = Convert.ToSByte(allData[i][colonne]); break; //sieges_secteur_01 case 26: csieges[0].sieges_secteurs = Convert.ToSByte(allData[i][colonne]); break; //sieges_cc_01 case 27: csieges[0].sieges_cc = Convert.ToSByte(allData[i][colonne]); break; //voix_01 case 28: elect[0].voix = Convert.ToInt32(allData[i][colonne]); break; //code_nuance_02 case 31: parti[1].code_nuance = allData[i][colonne]; break; //sexe_02 case 32: candidat[1].sexe = allData[i][colonne]; break; //nom_02 case 33: candidat[1].nom = allData[i][colonne]; break; //prenom_02 case 34: candidat[1].prenom = allData[i][colonne]; break; //liste_02 case 35: list[1].nomListe = allData[i][colonne]; break; //sieges_elu_02 case 36: csieges[1].sieges_elus = Convert.ToSByte(allData[i][colonne]); break; //sieges_secteur_02 case 37: csieges[1].sieges_secteurs = Convert.ToSByte(allData[i][colonne]); break; //sieges_cc_02 case 38: csieges[1].sieges_cc = Convert.ToSByte(allData[i][colonne]); break; //voix_02 case 39: elect[1].voix = Convert.ToInt32(allData[i][colonne]); break; // code nuance_03 case 42: if (allData[i][colonne] != "") { parti[2].code_nuance = allData[i][colonne]; } break; //sexe_03 case 43: if (allData[i][colonne] != "") { candidat[2].sexe = allData[i][colonne]; } break; //nom_03 case 44: if (allData[i][colonne] != "") { candidat[2].nom = allData[i][colonne]; } break; //prenom_03 case 45: if (allData[i][colonne] != "") { candidat[2].prenom = allData[i][colonne]; } break; //liste_03 case 46: if (allData[i][colonne] != "") { list[2].nomListe = allData[i][colonne]; } break; //sieges_elu_03 case 47: if (allData[i][colonne] != "") { csieges[2].sieges_elus = Convert.ToSByte(allData[i][colonne]); } break; //sieges_secteur_03 case 48: if (allData[i][colonne] != "") { csieges[2].sieges_secteurs = Convert.ToSByte(allData[i][colonne]); } break; //sieges_cc_03 case 49: if (allData[i][colonne] != "") { csieges[2].sieges_cc = Convert.ToSByte(allData[i][colonne]); } break; //voix_03 case 50: if (allData[i][colonne] != "") { elect[2].voix = Convert.ToInt32(allData[i][colonne]); } break; // code nuance_04 case 53: if (allData[i][colonne] != "") { parti[3].code_nuance = allData[i][colonne]; } break; //sexe_04 case 54: if (allData[i][colonne] != "") { candidat[3].sexe = allData[i][colonne]; } break; //nom_04 case 55: if (allData[i][colonne] != "") { candidat[3].nom = allData[i][colonne]; } break; //prenom_04 case 56: if (allData[i][colonne] != "") { candidat[3].prenom = allData[i][colonne]; } break; //liste_04 case 57: if (allData[i][colonne] != "") { list[3].nomListe = allData[i][colonne]; } break; //sieges_elus_04 case 58: if (allData[i][colonne] != "") { csieges[3].sieges_elus = Convert.ToSByte(allData[i][colonne]); } break; //sieges_secteur_04 case 59: if (allData[i][colonne] != "") { csieges[3].sieges_secteurs = Convert.ToSByte(allData[i][colonne]); } break; //sieges_cc_04 case 60: if (allData[i][colonne] != "") { csieges[3].sieges_cc = Convert.ToSByte(allData[i][colonne]); } break; //voix_04 case 61: if (allData[i][colonne] != "") { elect[3].voix = Convert.ToInt32(allData[i][colonne]); } break; // code_nuance_05 case 64: if (allData[i][colonne] != "") { parti[4].code_nuance = allData[i][colonne]; } break; //sexe_05 case 65: if (allData[i][colonne] != "") { candidat[4].sexe = allData[i][colonne]; } break; //nom_05 case 66: if (allData[i][colonne] != "") { candidat[4].nom = allData[i][colonne]; } break; //prenom_05 case 67: if (allData[i][colonne] != "") { candidat[4].prenom = allData[i][colonne]; } break; //liste_05 case 68: if (allData[i][colonne] != "") { list[4].nomListe = allData[i][colonne]; } break; //sieges_elu_05 case 69: if (allData[i][colonne] != "") { csieges[4].sieges_elus = Convert.ToSByte(allData[i][colonne]); } break; //sieges_secteur_05 case 70: if (allData[i][colonne] != "") { csieges[4].sieges_secteurs = Convert.ToSByte(allData[i][colonne]); } break; //sieges_cc_05 case 71: if (allData[i][colonne] != "") { csieges[4].sieges_cc = Convert.ToSByte(allData[i][colonne]); } break; //voix_05 case 72: if (allData[i][colonne] != "") { elect[4].voix = Convert.ToInt32(allData[i][colonne]); } break; } //Fin du switch if (colonne == 74) { using (var context = new electionEDM()) { dept.insertionDonneesDepartement(); parti[0].insertionDonneesParti(parti); comm.insertionCleEtrangereCommune(dept, Convert.ToSByte(allData[i][1]), allData[i][3]); comm.insertionDonneesCommune(dept); list[0].insertionCleEtrangereListe(list, parti); list[0].insertionDonneesListe(list); candidat[0].insertionCleEtrangereCandidat(candidat, list); candidat[0].insertionDonneesCandidat(candidat); elect[0].insertionCleEtrangereElection(elect, year, candidat, comm); elect[0].insertionDonneesElection(elect); stat.insertionCleEtrangereStatsElection(year, comm); stat.insertionDonneesStatElection(year, comm); csieges[0].insertionCleEtrangereCalculSieges(csieges, comm, year, list); csieges[0].insertionDonneesCalculSieges(csieges, comm, year, list); } } } //Fin du if(i>0) } //Fin du for des colonnes pagePrincipale.modificationLabelInsertionLignes(i); } //Fin du for pour les lignes }