2010-04-29 3 views
0

У меня есть следующая структура XML ...LINQ к помощи XML запроса требуется

<Fields> 
    <Field> 
     <Company>My Company</Company> 
    </Field> 
    <Field> 
     <Address2>Villa at beach</Address2> 
    </Field> 
    <Field> 
     <Email2>[email protected]</Email2> 
    </Field> 
    <Field> 
     <Mobile>333-888</Mobile> 
    </Field> 
    <Field> 
     <ContactMethod>Facebook</ContactMethod> 
    </Field> 
</Fields> 

Я хотел бы знать, как получить имя элемента с помощью LINQ? Что-то вроде этого:

var fields = (from field in contact.XmlFields.Descendants("Field") 
        select new ContactXmlView {Field = ...,Value = ...}); 

Я хотел бы выход быть что-то вроде этого:

Company: My Company 
Address2: Villa at beach... 

ответ

1

Если предположить, что у вас есть только один потомок для каждого узла «Поле»:

var fields = (from field in contact.XmlFields.Descendants("Field") 
          select new ContactXmlView 
          { 
           Field = field.Descendants().First().Name, 
           Value = field.Descendants().First().Value 
          }); 
+0

Оливье , Спасибо! –

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