コード例 #1
0
        public void AddProvincie(Provincie prov)
        {
            SqlConnection connection = getConnection();
            string        query      = "INSERT INTO dbo.provincie VALUES(@id, @naam)";

            using (SqlCommand command = connection.CreateCommand())
            {
                connection.Open();
                try
                {
                    command.Parameters.Add(new SqlParameter("@id", SqlDbType.Int));
                    command.Parameters.Add(new SqlParameter("@naam", SqlDbType.NVarChar));
                    command.CommandText               = query;
                    command.Parameters["@id"].Value   = prov.Id;
                    command.Parameters["@naam"].Value = prov.Naam;

                    command.ExecuteNonQuery();
                }catch (Exception ex)
                {
                    Console.WriteLine(ex);
                }
                finally
                {
                    connection.Close();
                }
            }
        }
コード例 #2
0
        public static void ExportProvincie(Provincie p)
        {
            string sql = "INSERT INTO Provincie " +
                         "VALUES(@Id, @TaalCode, @Naam, @RegioId);";

            using (SqlConnection conn = new SqlConnection(_connString))
            {
                SqlCommand cmd = new SqlCommand(sql, conn);
                cmd.Parameters.Add("@Id", SqlDbType.Int);
                cmd.Parameters.Add("@TaalCode", SqlDbType.NVarChar);
                cmd.Parameters.Add("@Naam", SqlDbType.NVarChar);
                cmd.Parameters.Add("@RegioId", SqlDbType.Int);

                cmd.Parameters["@Id"].Value       = p.Id;
                cmd.Parameters["@TaalCode"].Value = p.TaalCode;
                cmd.Parameters["@Naam"].Value     = p.Naam;
                cmd.Parameters["@RegioId"].Value  = p.RegioId;

                try
                {
                    conn.Open();
                    cmd.ExecuteNonQuery();
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                }
            }
        }
コード例 #3
0
        //opdracht 3
        public Straat ReturnStraatVoorNaam(string gemeenteNaam, string straatnaam)
        {
            SqlConnection connection     = getConnection();
            string        gemeenteQuery  = "SELECT * FROM dbo.gemeente JOIN gemeenteStraatLink ON gemeenteStraatLink.GemeenteId=gemeente.Id WHERE Naam = @GemeenteNaam";
            string        straatQuery    = "SELECT Id FROM dbo.straat JOIN gemeenteStraatLink ON gemeenteStraatLink.StraatId = straat.Id WHERE straat.Naam = @StraatNaam AND GemeenteId = @GemeenteId";
            string        provincieQuery = "SELECT * FROM dbo.provincie JOIN provincieGemeenteLink ON provincie.Id = provincieGemeenteLink.provincieId WHERE gemeenteId = @GemeenteId";

            using (SqlCommand StraatCommand = connection.CreateCommand())
                using (SqlCommand provincieCommand = connection.CreateCommand())
                    using (SqlCommand gemeenteCommand = connection.CreateCommand())
                    {
                        StraatCommand.CommandText = straatQuery;
                        StraatCommand.Parameters.Add(new SqlParameter("@StraatNaam", SqlDbType.NVarChar));
                        StraatCommand.Parameters.Add(new SqlParameter("@GemeenteId", SqlDbType.Int));
                        StraatCommand.Parameters["@StraatNaam"].Value = straatnaam;

                        gemeenteCommand.CommandText = gemeenteQuery;
                        gemeenteCommand.Parameters.Add(new SqlParameter("@GemeenteNaam", SqlDbType.NVarChar));
                        gemeenteCommand.Parameters["@GemeenteNaam"].Value = gemeenteNaam;

                        provincieCommand.CommandText = provincieQuery;
                        provincieCommand.Parameters.Add(new SqlParameter("@GemeenteId", SqlDbType.Int));

                        connection.Open();
                        try
                        {
                            SqlDataReader reader = gemeenteCommand.ExecuteReader();
                            reader.Read();
                            int gemeenteId = (int)reader["GemeenteId"];
                            reader.Close();

                            StraatCommand.Parameters["@GemeenteId"].Value = gemeenteId;
                            reader = StraatCommand.ExecuteReader();
                            reader.Read();
                            int straatId = (int)reader["Id"];
                            reader.Close();

                            provincieCommand.Parameters["@GemeenteId"].Value = gemeenteId;
                            reader = provincieCommand.ExecuteReader();
                            reader.Read();
                            int    provincieId   = (int)reader["Id"];
                            string provincieNaam = (string)reader["Naam"];
                            reader.Close();

                            Provincie provincie = new Provincie(provincieId, provincieNaam);
                            Gemeente  gemeente  = new Gemeente(gemeenteId, gemeenteNaam);
                            provincie.VoegGemeenteToe(gemeente);
                            return(ReturnStraatInGemeente(straatId, gemeente));
                        }
                        catch (Exception ex)
                        {
                            Console.WriteLine(ex);
                            return(null);
                        }
                        finally
                        {
                            connection.Close();
                        }
                    }
        }
コード例 #4
0
 public Adres(int huisnummer, string toevoeging, string straatnaam, int postcode, string stadsnaam, Provincie provincie)
 {
     Huisnummer = huisnummer;
     Toevoeging = toevoeging;
     Straatnaam = straatnaam;
     Postcode   = postcode;
     Stadsnaam  = stadsnaam;
     Provincie  = provincie;
 }
コード例 #5
0
 public void FillDataBaseWithProvincie(Provincie prov)
 {
     if (!CheckProvincie(prov))   //controle op dubbele entries
     {
         AddProvincie(prov);
     }
     foreach (Gemeente gem in prov.Gemeenten)
     {
         FillDatabaseWithGemeente(gem);
     }
 }
コード例 #6
0
        //
        // geeft List terug met provincies en hun ( gemeenteId; provincieId; taalCodeProvincieNaam; provincieNaam)
        // deze methonde bekijkt of de id in de lijst van getprovincieIdsVlaanderen() zit.
        // ProvincieInfo.csv geeft gemeenteId; provincieId; taalCodeProvincieNaam; provincieNaam
        public List <Provincie> getprovinciesList()
        {
            List <String>    ProvInVla       = getprovincieIdsVlaanderen();
            List <Provincie> provinciesLijst = new List <Provincie>();
            List <string>    ProvInfo        = new List <string>();

            FileInfo provtxt = new FileInfo(@"..\..\..\..\WRData\ProvincieInfo.csv");

            using (StreamReader sreader = provtxt.OpenText())
            {
                string input = null;
                while ((input = sreader.ReadLine()) != null)
                {
                    if (input.Contains("nl"))
                    {
                        string   woord = input;
                        string[] words = woord.Split(';');
                        if (words.Contains("nl"))
                        {
                            for
                            (int i = 0; i < words.Count(); i++) //loops through each element of the array
                            {
                                ProvInfo.Add(words[i]);         //Add each word on the array on to woorden list
                            }
                        }
                    }
                }
            }
            //overloopt heel de lijst en neemt per keer 4x objecten eruit
            for (int i = 0; i < ProvInfo.Count(); i += 4)
            {   //kijkt of provincie al bestaat
                if (!provinciesLijst.Any(p => p.provincieId.Equals(ProvInfo[i + 1])))
                {
                    if (ProvInVla.Contains(ProvInfo[i + 1]))
                    {
                        provinciesLijst.Add(new Provincie(ProvInfo[i + 1], ProvInfo[i + 2], ProvInfo[i + 3]));
                    }
                }
                //voegt gemeenteIds toe aan huidige provincie
                if (provinciesLijst.Any(p => p.provincieId.Equals(ProvInfo[i + 1])))
                {
                    Provincie x = provinciesLijst.Where(p => p.provincieId.Equals(ProvInfo[i + 1])).First();
                    x.addGemeenteIds_toProvin(ProvInfo[i], ProvInfo[i + 1]);
                }
            }
            provinciesLijst.ForEach(p => p.Prov_gemeente_geven(gemeentes));
            return(provinciesLijst);
        }
コード例 #7
0
        public Provincie ReturnProvincieCompleteVoorId(int provincieId)
        {
            SqlConnection connection     = getConnection();
            string        provincieQuery = "SELECT * FROM dbo.provincie JOIN provincieGemeenteLink ON provincie.Id = provincieGemeenteLink.provincieId WHERE provincieId = @Id";

            using (SqlCommand provincieCommand = connection.CreateCommand())
            {
                provincieCommand.CommandText = provincieQuery;
                provincieCommand.Parameters.Add(new SqlParameter("@Id", SqlDbType.Int));
                provincieCommand.Parameters["@Id"].Value = provincieId;
                connection.Open();
                try
                {
                    SqlDataReader reader = provincieCommand.ExecuteReader();
                    reader.Read();
                    string     provincieNaam = (string)reader["Naam"];
                    Provincie  provincie     = new Provincie(provincieId, provincieNaam);
                    List <int> gemeenteIds   = new List <int> {
                        (int)reader["GemeenteId"]
                    };
                    while (reader.Read())
                    {
                        gemeenteIds.Add((int)reader["GemeenteId"]);
                    }

                    foreach (int gemeenteId in gemeenteIds)
                    {
                        provincie.VoegGemeenteToe(ReturnGemeenteVoorGemeenteId(gemeenteId));
                    }
                    return(provincie);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex);
                    return(null);
                }
                finally
                {
                    connection.Close();
                }
            }
        }
コード例 #8
0
        public bool CheckProvincie(Provincie prov)
        {
            SqlConnection connection = getConnection();
            string        query      = "SELECT COUNT(*) AS count FROM dbo.provincie WHERE Id=@Id";

            using (SqlCommand command = connection.CreateCommand())
            {
                command.CommandText = query;
                SqlParameter paramId = new SqlParameter();
                paramId.ParameterName = "@Id";
                paramId.DbType        = DbType.Int32;
                paramId.Value         = prov.Id;
                command.Parameters.Add(paramId);
                connection.Open();
                try
                {
                    IDataReader reader = command.ExecuteReader();
                    reader.Read();
                    int knoopCount = (int)reader["count"];

                    if (knoopCount == 1)
                    {
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex);
                    throw new Exception("Incorrect SQL syntax in CheckProvincie");
                }
                finally
                {
                    connection.Close();
                }
            }
        }
コード例 #9
0
        public void ProvincieRapport(string provincieNaam)
        {
            Provincie prov = Fetch.ReturnProvincieCompleteVoorNaam(provincieNaam);

            string path = Path.Combine(ReportsPath, $"Provincie rapport {prov.Naam}.txt");

            CheckAndDeleteFile(path);
            using (StreamWriter writer = File.CreateText(path))
            {
                prov.Gemeenten = prov.Gemeenten.OrderBy(g => g.Naam).ToList();
                foreach (Gemeente gem in prov.Gemeenten)
                {
                    writer.WriteLine($"{gem.Naam}: {gem.Straten.Count}");
                    gem.Straten = gem.Straten.OrderBy(s => s.Lengte).ToList();
                    foreach (Straat straat in gem.Straten)
                    {
                        writer.WriteLine($"     ■   {straat.Naam}, {straat.Lengte}");
                    }
                }
            }
            Console.WriteLine($"PrivincieReport weggeschreven in {path}\n\n");
        }
コード例 #10
0
        //Console.WriteLine("testen");
        //Belgie belg = TestData();
        ////Knoop knoop1 = new Knoop(30, new Punt(2.45, 3.45));
        ////dp.FillDataBase();
        //}

        static Belgie TestData()
        {
            Punt  testPunt1 = new Punt(2.45, 3.45);
            Punt  testPunt2 = new Punt(3.45, 4.45);
            Punt  testPunt3 = new Punt(4.45, 5.45);
            Punt  testPunt4 = new Punt(5.45, 6.45);
            Punt  testPunt5 = new Punt(6.45, 7.45);
            Knoop knoop1    = new Knoop(30, testPunt1);
            Knoop knoop2    = new Knoop(40, testPunt2);
            Knoop knoop3    = knoop1;
            Knoop knoop4    = new Knoop(50, testPunt3);

            List <Punt> puntlijstSeg1 = new List <Punt> {
                testPunt4
            };
            List <Punt> puntlijstSeg2 = new List <Punt> {
                testPunt5
            };

            Segment testSegment1 = new Segment(112, knoop1, knoop2, puntlijstSeg1);
            Segment testSegment2 = new Segment(113, knoop3, knoop4, puntlijstSeg2);

            Dictionary <Knoop, List <Segment> > testMap1 = new Dictionary <Knoop, List <Segment> >();

            testMap1.Add(knoop1, new List <Segment> {
                testSegment1
            });
            testMap1.Add(knoop2, new List <Segment> {
                testSegment1
            });
            Dictionary <Knoop, List <Segment> > testMap2 = new Dictionary <Knoop, List <Segment> >();

            testMap2.Add(knoop1, new List <Segment> {
                testSegment2
            });
            testMap2.Add(knoop2, new List <Segment> {
                testSegment2
            });

            Graaf testGraaf1 = new Graaf(250, testMap1);
            Graaf testGraaf2 = new Graaf(260, testMap2);



            Gemeente  testGemeente  = new Gemeente(12, "testGemeente");
            Straat    testStraat1   = new Straat(10, "TestStraat1", testGraaf1, testGemeente);
            Straat    testStraat2   = new Straat(20, "TestStraat2", testGraaf2, testGemeente);
            Provincie testProvincie = new Provincie(1, "testProvincie");

            testProvincie.VoegGemeenteToe(testGemeente);
            Belgie belg = new Belgie(new List <Provincie>()
            {
                testProvincie
            });

            DataProcessing dp = new DataProcessing(belg);

            dp.CompletelyFillDataBase();

            return(belg);
        }
コード例 #11
0
        private void GetProvinciesGemeenten(List <string> provincies, Dictionary <int, Gemeente> gemeenten)
        {
#if DEBUG
            DebugWriter.WriteLine("-> RegiosProvider::ReadProvinciesGemeenten");
            var timer = new Stopwatch();
            timer.Start();
#endif
            using GenericParser provincieGemeentenReader = new GenericParser(Config.Path + "/" + Config.ProvincieInfo)
                  {
                      ColumnDelimiter   = ';',
                      FirstRowHasHeader = true,
                      MaxBufferSize     = 4096
                  };

            while (provincieGemeentenReader.Read())
            {
                var id       = provincieGemeentenReader[1].Trim();
                var naam     = provincieGemeentenReader[3].Trim();
                var taalCode = provincieGemeentenReader[2].Trim();
                if (taalCode != _land.TaalCode)
                {
                    continue;
                }
                if (provincies.Contains(provincieGemeentenReader[1].Trim()))
                {
                    Provincie p;
                    foreach (var regio in _land.Regios.Values)
                    {
                        if (regio.Provincies.ContainsKey(provincieGemeentenReader[3].Trim()))
                        {
                            p = regio.Provincies[provincieGemeentenReader[3].Trim()];
                        }
                        else
                        {
                            p = new Provincie {
                                Id = int.Parse(id), Naam = naam, TaalCode = taalCode, Regio = regio
                            };
                            regio.Provincies.Add(p.Naam, p);
                        }
                        var key = int.Parse(provincieGemeentenReader[0].Trim());
                        if (gemeenten.ContainsKey(key))
                        {
                            var gemeente = gemeenten[key];
                            if (gemeente.Provincie == null)
                            {
                                gemeente.Provincie = p;
                            }
                            else
                            {
                                throw new Exception("Gemeente behoort reeds tot andere provincie");
                            }
                            if (!p.Gemeenten.ContainsKey(gemeente.Naam))
                            {
                                p.Gemeenten.Add(gemeente.Naam, gemeente);
                            }
                        }
                    }
                }
            }
#if DEBUG
            timer.Stop();
            TimeSpan timeTaken = timer.Elapsed;
            DebugWriter.WriteLine("<- RegiosProvider::ReadProvinciesGemeenten: " + timeTaken.ToString(@"m\:ss\.fff"));
#endif
        }
コード例 #12
0
        public static void Initialize(VLContext context)
        {
            context.Database.EnsureCreated();

            // Look for any activiteiten.
            if (context.Activiteiten.Any())
            {
                return;   // DB has been seeded
            }

            var provincies = new Provincie[]
            {
                new Provincie {
                    ProvincieID = 200, Naam = "Limburg"
                },
                new Provincie {
                    ProvincieID = 100, Naam = "Antwerpen"
                },
                new Provincie {
                    ProvincieID = 300, Naam = "Vlaams-Brabant"
                },
                new Provincie {
                    ProvincieID = 400, Naam = "West-Vlaanderen"
                },
                new Provincie {
                    ProvincieID = 500, Naam = "Oost-Vlaanderen"
                },
            };

            foreach (var p in provincies)
            {
                context.Provincies.Add(p);
            }
            context.SaveChanges();

            var gemeentes = new Gemeente[]
            {
                new Gemeente {
                    GemeenteID = 2440, ProvincieID = 100, Naam = "Geel"
                },
                new Gemeente {
                    GemeenteID = 2200, ProvincieID = 100, Naam = "Herentals"
                },
                new Gemeente {
                    GemeenteID = 3390, ProvincieID = 300, Naam = "Tielt-Winge"
                },
                new Gemeente {
                    GemeenteID = 3500, ProvincieID = 200, Naam = "Hasselt"
                },
                new Gemeente {
                    GemeenteID = 2260, ProvincieID = 100, Naam = "Westerlo"
                },
                new Gemeente {
                    GemeenteID = 3000, ProvincieID = 300, Naam = "Leuven"
                },
                new Gemeente {
                    GemeenteID = 3200, ProvincieID = 300, Naam = "Aarschot"
                },
                new Gemeente {
                    GemeenteID = 3700, ProvincieID = 200, Naam = "Tongeren"
                },
            };

            foreach (var g in gemeentes)
            {
                context.Gemeentes.Add(g);
            }
            context.SaveChanges();

            var activiteiten = new Activiteit[]
            {
                new Activiteit {
                    ActiviteitID = 1, GemeenteID = 3500, MaxPersonen = 3, Naam = "Shotjes in het Jenevermuseum", Datum = DateTime.Parse("2020-08-08")
                },
                new Activiteit {
                    ActiviteitID = 200, GemeenteID = 2440, MaxPersonen = 10, Naam = "Stadswandeling", Datum = DateTime.Parse("2020-07-15")
                },
                new Activiteit {
                    ActiviteitID = 3, GemeenteID = 3390, MaxPersonen = 2, Naam = "Uitzicht vanop de Vlooybergtoren", Datum = DateTime.Parse("2020-08-23")
                },
                new Activiteit {
                    ActiviteitID = 40, GemeenteID = 2260, MaxPersonen = 15, Naam = "Natuurwandeling Kwarekken", Datum = DateTime.Parse("2020-08-03")
                },
                new Activiteit {
                    ActiviteitID = 5, GemeenteID = 3000, MaxPersonen = 5, Naam = "Universiteitsbibliotheek en -toren", Datum = DateTime.Parse("2020-07-06")
                },
                new Activiteit {
                    ActiviteitID = 61, GemeenteID = 2440, MaxPersonen = 3, Naam = "Bezoek Gasthuismuseum", Datum = DateTime.Parse("2020-07-01")
                },
                new Activiteit {
                    ActiviteitID = 7, GemeenteID = 2260, MaxPersonen = 8, Naam = "Gegidst bezoek gemeentehuis", Datum = DateTime.Parse("2020-07-11")
                },
                new Activiteit {
                    ActiviteitID = 88, GemeenteID = 2200, MaxPersonen = 15, Naam = "Boerenkrijgwandeling", Datum = DateTime.Parse("2020-08-15")
                },
                new Activiteit {
                    ActiviteitID = 900, GemeenteID = 3500, MaxPersonen = 30, Naam = "Japanse tuin", Datum = DateTime.Parse("2020-07-09")
                },
                new Activiteit {
                    ActiviteitID = 1000, GemeenteID = 3500, MaxPersonen = 15, Naam = "Het stadsmus", Datum = DateTime.Parse("2020-07-10")
                },
                new Activiteit {
                    ActiviteitID = 11, GemeenteID = 3700, MaxPersonen = 10, Naam = "Gallo-Romeins Museum", Datum = DateTime.Parse("2020-08-11")
                },
                new Activiteit {
                    ActiviteitID = 1212, GemeenteID = 2440, MaxPersonen = 8, Naam = "De schatten van de Sint-Dimpnakerk", Datum = DateTime.Parse("2020-07-22")
                },
                new Activiteit {
                    ActiviteitID = 13, GemeenteID = 3000, MaxPersonen = 15, Naam = "Wandeling Groot Begijnhof", Datum = DateTime.Parse("2020-08-14")
                },
                new Activiteit {
                    ActiviteitID = 141, GemeenteID = 3390, MaxPersonen = 8, Naam = "Ridderavontuur in het kasteel van Horst", Datum = DateTime.Parse("2020-07-25")
                },
                new Activiteit {
                    ActiviteitID = 15, GemeenteID = 3200, MaxPersonen = 6, Naam = "Bezoek stadsbrouwerij", Datum = DateTime.Parse("2020-08-07")
                },
            };

            foreach (var a in activiteiten)
            {
                context.Activiteiten.Add(a);
            }
            context.SaveChanges();

            var inschrijvingen = new Inschrijving[]
            {
                new Inschrijving {
                    Naam = "Jef Verboven", Email = "*****@*****.**", ActiviteitID = 1
                },
                new Inschrijving {
                    Naam = "Ans Heylen", Email = "*****@*****.**", ActiviteitID = 3
                },
                new Inschrijving {
                    Naam = "Steff Quintens", Email = "*****@*****.**", ActiviteitID = 88
                },
                new Inschrijving {
                    Naam = "Alex Peeters", Email = "*****@*****.**", ActiviteitID = 5
                },
                new Inschrijving {
                    Naam = "Mies Gevers", Email = "*****@*****.**", ActiviteitID = 3
                },
                new Inschrijving {
                    Naam = "Wout Stevens", Email = "*****@*****.**", ActiviteitID = 7
                },
                new Inschrijving {
                    Naam = "Karel Abeloos", Email = "*****@*****.**", ActiviteitID = 88
                },
                new Inschrijving {
                    Naam = "Els Van Mol", Email = "*****@*****.**", ActiviteitID = 5
                },
                new Inschrijving {
                    Naam = "Griet Van Lommel", Email = "*****@*****.**", ActiviteitID = 61
                },
                new Inschrijving {
                    Naam = "Lea Storms", Email = "*****@*****.**", ActiviteitID = 61
                },
                new Inschrijving {
                    Naam = "Steven Haeckens", Email = "*****@*****.**", ActiviteitID = 7
                },
                new Inschrijving {
                    Naam = "Peter Vanheuckelom", Email = "*****@*****.**", ActiviteitID = 5
                },
                new Inschrijving {
                    Naam = "Dana Wouters", Email = "*****@*****.**", ActiviteitID = 1000
                },
                new Inschrijving {
                    Naam = "Laura Fleerackers", Email = "*****@*****.**", ActiviteitID = 11
                },
                new Inschrijving {
                    Naam = "Hugo Christiaans", Email = "*****@*****.**", ActiviteitID = 1000
                },
                new Inschrijving {
                    Naam = "Greet Mertens", Email = "*****@*****.**", ActiviteitID = 61
                },
                new Inschrijving {
                    Naam = "Dieter Sjegers", Email = "*****@*****.**", ActiviteitID = 11
                }
            };

            foreach (var i in inschrijvingen)
            {
                context.Inschrijvingen.Add(i);
            }
            context.SaveChanges();
        }