2010-12-12 3 views
2

мне нужна помощь в разборе данных XML в Windows Phone 7. Я ищу что-то похожее на пример XMl parsign example Но я столкнулся проблемы при написании запроса LINQ для данных XML, какXML Синтаксический + Windows Phone 7

<toursList> 
<tour> 
<title>short tour </title> 
<description>the short tour is kinda quick! </description> 
<stop> <title>tabaret hall</title> 
<description>tabaret hall </description> 
    <location> 
    <latitude>45.424585</latitude> 
     <longitude>-75.68608</longitude> 
    </location> 
</stop> 
</tour> 
</toursList>"; 

я был бы очень признателен за любую помощь, оказанную для разбора XML МНОГОУРОВНЕВОЕ Doc

Спасибо и наилучшими пожеланиями Сурья

+0

Вы показали, какой XML вы пытаетесь разобрать, но не какие проблемы вы используете, откуда идет XML, или то, что вы пробовали до сих пор. Это очень сложно вам помочь. –

ответ

2

Как Джон говорит, что выше, ваш вопрос требует немного больше ех plaination, но, возможно, что-то вроде следующего является то, что ищет:

var tours = from tour in toursListElement.Elements("tour") 
     select new Tour 
     { 
       Description = tour.Element("description"), 
       Stops = (from stop in tour.Elements("stop") 
         select new Stop 
         { 
          Title = stop.Element("title"), 
          Description = stop.Element("description"), 
          Location = new Location 
             { 
              Latitude = stop.Element("location").Element("latitude"), 
              Longitude = stop.Element("location").Element("longitude") 
             } 
         }).ToList() 
     }; 
+0

Спасибо тонну !! .. это именно то, что я пытался сделать. – surya

+0

Что такое остановки? это строка или список? – Jeeva

+0

Стопы - это список узлов . –

2

Не зная точно, что вы пытаетесь сделать это трудно предоставить именно то, что вы хотите, но следующий показывают путь (есть еще много) доступа ко всем узлам в XML-примере.

var tours = from list in xdoc.Elements("toursList") 
      select list.Elements("tour"); 

var tour = tours.First(); 

var title = tour.Elements("title").First().Value; 

var desc = tour.Elements("description").First().Value; 

var stop = tour.Elements("stop").First().Value; 

var stopTitle = stop.Elements("title").First().Value; 

var stopDescription = stop.Elements("description").First().Value; 

var stopLocation = stop.Elements("location").First().Value; 

var stopLat = stopLocation.Elements("latitude").First().Value; 

var stopLong = stopLocation.Elements("longitude").First().Value; 
+0

Большое спасибо за ответ .. это поможет мне :-) – surya