0
我剛剛開始在c#中使用linq查詢,並且我努力獲取所需的所有數據。在C#中使用LINQ和XML獲取子元素
基本上我使用谷歌地球kml文件作爲我的xml文件。
結構看起來像這樣。
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.2">
<Document>
<Placemark>
<name>XXX</name>
<description>XXX</description>
<styleUrl>XXX</styleUrl>
<Point>
<coordinates>XXX</coordinates>
</Point>
</Placemark>
</Document>
</kml>
我的代碼,因爲它是我能得到元素的第一級,(名稱,描述,styleurl),但不能以點帶面內獲取座標元素我的語法正確。任何人都可以將我指向正確的方向嗎?我掙扎的線是Coord = p.Element(ns +「Point」)。Element(ns +「coordinates」)。Value,這應該是什麼?
XNamespace ns = "http://earth.google.com/kml/2.2";
var placemarks = xdoc.Descendants(ns + "Placemark")
.Select(p => new
{
Name = p.Element(ns + "name").Value,
Desc = p.Element(ns + "description").Value,
Coord = p.Element(ns + "Point")
.Element(ns + "coordinates").Value
}).ToList();
謝謝!現在工作很好。 – norbert