Importer weiter geschrieben
This commit is contained in:
@@ -146,6 +146,7 @@ namespace Schnittstelle.Import.XML.v2013
|
||||
result.Lage = new Lage(strassename, ortname);
|
||||
break;
|
||||
case "OptischeInspektion": result.OptischeInspektion.Add(parseOptischeInspektion(d)); break;
|
||||
default: throw new NotImplementedException(d.Name);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
@@ -439,6 +440,7 @@ namespace Schnittstelle.Import.XML.v2013
|
||||
case "Kantentyp": result.Kantentyp = (EKantenTyp)Convert.ToInt32(d.InnerText); break;
|
||||
case "Entfernung": result.Entfernung = Convert.ToDecimal(d.InnerText.Replace('.', ',')); break;
|
||||
case "Fixierung": result.Fixierung = d.InnerText; break;
|
||||
default: throw new NotImplementedException(d.Name);
|
||||
|
||||
}
|
||||
}
|
||||
@@ -491,36 +493,171 @@ namespace Schnittstelle.Import.XML.v2013
|
||||
|
||||
private Geometrie parseGeometrie(XmlNode aktuell)
|
||||
{
|
||||
Geometrie result = new Geometrie();
|
||||
foreach (XmlNode s in aktuell.ChildNodes)
|
||||
{
|
||||
switch (s.Name)
|
||||
{
|
||||
case "GeoObjekttyp": break;
|
||||
case "Geometriedaten":
|
||||
result.Geometriedaten = parseGeometrieDaten(s);
|
||||
break;
|
||||
case "GeoObjektart": break;
|
||||
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
||||
}
|
||||
|
||||
return new Geometrie();
|
||||
//throw new NotImplementedException();
|
||||
private Geometriedaten parseGeometrieDaten(XmlNode aktuel)
|
||||
{
|
||||
Geometriedaten result = new Geometriedaten();
|
||||
foreach (XmlNode s in aktuel.ChildNodes)
|
||||
{
|
||||
switch (s.Name)
|
||||
{
|
||||
case "Knoten":
|
||||
result.Knoten = parseGeometrieKnoten(s);
|
||||
break;
|
||||
case "Kanten":
|
||||
parseGeometrieKanten(s);
|
||||
break;
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
private void parseGeometrieKanten(XmlNode aktuel)
|
||||
{
|
||||
foreach (XmlNode s in aktuel.ChildNodes)
|
||||
{
|
||||
switch (s.Name)
|
||||
{
|
||||
case "Kante":
|
||||
parseGeometrieKante(s);
|
||||
break;
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void parseGeometrieKante(XmlNode aktuel)
|
||||
{
|
||||
foreach (XmlNode s in aktuel.ChildNodes)
|
||||
{
|
||||
switch (s.Name)
|
||||
{
|
||||
case "Start":
|
||||
parseGeometrieKanteStartEnde(s);
|
||||
break;
|
||||
case "Ende":
|
||||
parseGeometrieKanteStartEnde(s);
|
||||
break;
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
}
|
||||
}
|
||||
private void parseGeometrieKanteStartEnde(XmlNode aktuel)
|
||||
{
|
||||
foreach (XmlNode s in aktuel.ChildNodes)
|
||||
{
|
||||
switch (s.Name)
|
||||
{
|
||||
case "Rechtswert": break;
|
||||
case "Hochwert": break;
|
||||
case "Punkthoehe": break;
|
||||
case "PunktattributAbwasser": break;
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private Geometriedatenknoten parseGeometrieKnoten(XmlNode aktuel)
|
||||
{
|
||||
Geometriedatenknoten result = new Geometriedatenknoten();
|
||||
foreach (XmlNode s in aktuel.ChildNodes)
|
||||
{
|
||||
switch (s.Name)
|
||||
{
|
||||
case "Punkt":
|
||||
result.Punkt.Add(parseGeometrieKnotenPunkt(s));
|
||||
break;
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
private Punkt parseGeometrieKnotenPunkt(XmlNode aktuel)
|
||||
{
|
||||
Punkt punkt = new Punkt();
|
||||
foreach (XmlNode s in aktuel.ChildNodes)
|
||||
{
|
||||
switch (s.Name)
|
||||
{
|
||||
case "Rechtswert":
|
||||
punkt.Rechtswert = Convert.ToDecimal(s.InnerText.Replace('.', ','));
|
||||
break;
|
||||
case "Hochwert":
|
||||
punkt.Hochwert = Convert.ToDecimal(s.InnerText.Replace('.', ','));
|
||||
break;
|
||||
case "Punkthoehe":
|
||||
punkt.Punkthoehe = Convert.ToDecimal(s.InnerText.Replace('.', ','));
|
||||
break;
|
||||
case "PunktattributAbwasser":
|
||||
punkt.PunktattributeAbwasser = s.InnerText;
|
||||
break;
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
}
|
||||
return punkt;
|
||||
}
|
||||
|
||||
private Kante parseKante(XmlNode aktuell)
|
||||
{
|
||||
/*
|
||||
KantenTyp
|
||||
KnotenZulauf
|
||||
KnotenZulaufTyp
|
||||
KnotenAblauf
|
||||
KnotenAblaufTyp
|
||||
SohlhoeheZulauf
|
||||
SohlhoeheAblauf
|
||||
Laenge
|
||||
Material
|
||||
Profil
|
||||
Haltung
|
||||
*/
|
||||
Kante result = new Kante();
|
||||
|
||||
foreach (XmlNode s in aktuell.ChildNodes)
|
||||
{
|
||||
switch (s.Name)
|
||||
{
|
||||
case "KnotenZulauf": result.knotenZulaufTemp = s.InnerText; break;
|
||||
case "KnotenAblauf": result.knotenAblaufTemp = s.InnerText; break;
|
||||
case "Profil": result.Profil = getProfil(s); break;
|
||||
|
||||
case "KnotenZulauf":
|
||||
result.knotenZulaufTemp = s.InnerText;
|
||||
break;
|
||||
case "KnotenAblauf":
|
||||
result.knotenAblaufTemp = s.InnerText;
|
||||
break;
|
||||
case "Profil":
|
||||
result.Profil = getProfil(s);
|
||||
break;
|
||||
case "KantenTyp":
|
||||
break;
|
||||
case "KnotenZulaufTyp":
|
||||
result.KnotenZulaufTyp = Convert.ToInt32(s.InnerText);
|
||||
break;
|
||||
case "KnotenAblaufTyp":
|
||||
result.KnotenAblaufTyp = Convert.ToInt32(s.InnerText);
|
||||
break;
|
||||
case "SohlhoeheZulauf":
|
||||
result.SohlhoeheZulauf = Convert.ToDecimal(s.InnerText.Replace('.',','));
|
||||
break;
|
||||
case "SohlhoeheAblauf":
|
||||
result.SohlhoeheAblauf = Convert.ToDecimal(s.InnerText.Replace('.',','));
|
||||
break;
|
||||
case "Laenge":
|
||||
result.Laenge = Convert.ToDecimal(s.InnerText);
|
||||
break;
|
||||
case "Material":
|
||||
result.Material = s.InnerText;
|
||||
break;
|
||||
case "Haltung":
|
||||
break;
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
@@ -553,6 +690,7 @@ namespace Schnittstelle.Import.XML.v2013
|
||||
case "KnotenTyp": result.KnotenTyp = (EKnotenTyp)Convert.ToInt32(s.InnerText); break;
|
||||
case "Anschlusspunkt": result.Anschlusspunkt = new Anschlusspunkt() { Punktkennung = s.InnerText }; break;
|
||||
case "Schacht": result.Schacht = parseSchacht(s); break;
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -567,7 +705,20 @@ namespace Schnittstelle.Import.XML.v2013
|
||||
switch (n.Name)
|
||||
{
|
||||
case "SchachtFunktion": result.SchachtFunktion = (ESchachtFunktion)Convert.ToInt32(n.InnerText); break;
|
||||
case "Schachttiefe": result.SchachtTiefe = Convert.ToDecimal(n.InnerText); break;
|
||||
case "Schachttiefe":
|
||||
result.SchachtTiefe = Convert.ToDecimal(n.InnerText);
|
||||
Debugger.Break();
|
||||
break;
|
||||
case "Einstieghilfe": break;
|
||||
case "ArtEinstieghilfe": break;
|
||||
case "MaterialSteighilfen": break;
|
||||
case "AnzahlDeckel": break;
|
||||
case "Abdeckung": break;
|
||||
case "Aufbau": break;
|
||||
case "UntereSchachtzone": break;
|
||||
case "Unterteil": break;
|
||||
case "AnzahlAnschluesse": break;
|
||||
default: throw new NotImplementedException(n.Name);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
||||
Reference in New Issue
Block a user