2013-05-16 4 views
2

Я использую ASP.NET, C# и XMLDOC для чтения файла XMl. Это мой XML-файл:Прочитайте первый дочерний элемент последнего элемента

<?xml version="1.0" encoding="utf-8" ?> 
<News> 
<article> 
    <id>1</id> 
    <title>ניסוי</title> 
    <pics>name.png</pics> 
    <header>כותרת משנה ניסיונית</header> 
    <text>זוהי הכתבה הראשונה, כרגע היא בניסיון אנחנו נמשיך ונבדוק</text> 
</article> 
<article> 
    <id>2</id> 
    <title>נ2יסוי</title> 
    <pics>nam2e.png</pics> 
    <header>כותרת2 מ2שנה ניסיונית</header> 
    <text>זוהי הכתב2ה2 הראשונה, כרגע היא בניסיון אנחנו נמשיך ונבדוק</text> 
</article> 
</News> 

Я хочу прочитать идентификатор узла в последний элемент статьи. Я попробовал этот код (после загрузки файла XML):

XmlDocument doc = new XmlDocument(); 
doc.DocumentElement.LastChild.ChildNodes.Item(0).Value 

Спасибо за помощь

ответ

0
XDocument doc = XDocument.Load("URL"); 

var LatestId = doc.Element("News") 
       .Elements("article") 
       .Select(E => E.Element("id").Value) 
       .Max(); 

В качестве альтернативы вы можете использовать

var LatestId = doc.Element("News") 
        .Elements("article") 
        .Last().Element("id").Value; 
+0

Спасибо, но это ошибка, я получаю: Ошибка «System.Xml.XmlDocument» не содержит определения для «Элемента» и никакого метода расширения «Элемент», принимающего первый аргумент типа «System.Xml.XmlDo cument»может быть найден (вы пропали без вести с помощью директивы или ссылка на сборку?) \t D: \ Projects \ פרויקט אתר \ App_Code \ xml.cs \t 20 D: \ Projects \ פרויקט אתר \ – user2390564

+0

ошибка с ходу когда вы переходите из XmlDocument в XDocument. – arunlalam

+0

Спасибо, не заметил этого. – user2390564

Смежные вопросы