// See https://aka.ms/new-console-template for more information using System.Collections; using System.Diagnostics; using System.Xml; using System.Windows.Markup; using DaSaSo.DatabaseConverter; using DaSaSo.Domain.Services; using DaSaSo.Domain.Model; using DaSaSo.EntityFramework.Services; using DaSaSo.EntityFramework; Console.WriteLine("Hello, World!"); ConvertXML convertXML = new ConvertXML(); convertXML.parseXML(); WriteToNewDB(convertXML.GetProjekts); Console.WriteLine("Fertig"); Console.ReadLine(); static void WriteToNewDB(List alteDB) { IDataService dataService = new GenericDataService(new DaSaSoDbContextFactory("Host = localhost; Database = dasaso; Username = kansan; Password = kansan")); foreach(Projekt projekt in alteDB) { Client newClient = new Client(); /*{ Firstname = projekt.Auftraggeber.Name, Street = projekt.Auftraggeber.Strasse, Country = projekt.Auftraggeber.Ort };*/ if(projekt.Auftraggeber == null) { newClient.Firstname = ""; newClient.Street = ""; newClient.Country =""; } else { newClient.Firstname = projekt.Auftraggeber.Name; newClient.Street = projekt.Auftraggeber.Strasse; newClient.Country = projekt.Auftraggeber.Ort; } Project project = new Project(); project.Client = newClient; project.Name = projekt.Ort; List buildingsites = new List(); Buildingsite buildingsite = new Buildingsite(); buildingsite.ContactPerson = projekt.Auftraggeber != null? projekt.Auftraggeber.Ansprechpartner : ""; buildingsite.BuildingSiteNumber = projekt.ProjektNummer; buildingsite.Project = project; List Sewers = new List(); foreach(Inspektionsobjekt inspektionsobjekt in projekt.inspektionsobjekte) { SewerObject sewerObject = new SewerObject(); sewerObject.BuildingSite = buildingsite; sewerObject.DN = inspektionsobjekt.Kanalrohrweite; sewerObject.ObjektName = inspektionsobjekt.Objektbezeichnung; sewerObject.Material = inspektionsobjekt.RohrMaterial; sewerObject.PunktOben = new SewerPoint() { Objektnummer = inspektionsobjekt.VonPunkt }; sewerObject.PunktObenType = DaSaSo.Domain.Enums.EPointType.Schacht; sewerObject.PunktUnten = new SewerPoint() { Objektnummer = inspektionsobjekt.BisPunkt }; sewerObject.PunktUntenType = DaSaSo.Domain.Enums.EPointType.Anschlusspunkt; sewerObject.StreetName = inspektionsobjekt.StrasseName; sewerObject.SewerLength = inspektionsobjekt.Haltungslaenge; Sewers.Add(sewerObject); } buildingsite.SewerObjects = Sewers; buildingsites.Add(buildingsite); project.BuildingSites = buildingsites; dataService.Create(project); } }