//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(); } } }
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(); } } }
//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); }