I have this XML structure:
<?xml version="1.0" encoding="UTF-8"?> <kml xmlns="http://www.opengis.net/kml/2.2"> <Document> <name>My Work</name> <Placemark> <name>Main Building</name> <Polygon> <extrude>1</extrude> <altitudeMode>relativeToGround</altitudeMode> <outerBoundaryIs> <LinearRing> <coordinates> </coordinates> </LinearRing> </outerBoundaryIs> </Polygon> </Placemark> <Placemark> <name>Office 1</name> <Polygon> <extrude>1</extrude> <altitudeMode>relativeToGround</altitudeMode> <outerBoundaryIs> <LinearRing> <coordinates> </coordinates> </LinearRing> </outerBoundaryIs> </Polygon> </Placemark> </Document> </kml>
It continues...
I need to select the "name" of the building for each of them and save it inside the list. I wrote this code:
using System; using System.Linq; using System.Xml; using System.Xml.Linq; using System.Collections.Generic; namespace dsdsdsds { public class Building { public string BuildingName { get; set; } } class MainClass { public static void Main(string[] args) { List<Building> buildingNames = (from e in XDocument.Load("buildings.kml").Root .Elements("Document") select new Building { BuildingName = (string)e.Element("name") }).ToList(); foreach (var e in buildingNames) { Console.WriteLine(e); } } } }
However, it seems he doesnโt want to output anything, and I canโt find out where I am wrong. Can anyone help me?
thanks
source share