C # Как читать значение из тега xml (xmlnodelist), используя свой атрибут?

Не могли бы вы помочь мне узнать, как получить значение тега xml, используя свой атрибут с C #. необходимость:

Пример кода

<Friend>
   <FName>Patrick</FName>
   <LName>Aston</LName>
   <Age>22</Age>
   <FriendsIdList>
       <FriendId IdType="school">29982252</FriendId>
       <FriendId IdType="athome">2334568</FriendId>
       <FriendId IdType="atcamp">9908787</FriendId>
       <FriendId IdType="studygroup">6588432</FriendId>
   </FriendsIdList>
</Friend>

Как получить значение тега, <FriendId IdType="XXXXX">XXXXXX</FriendId> я пытался использовать XMLnodelist в последовательности foreach, но безуспешно. Есть ли у вас предложения? Спасибо за вашу помощь.

c#,xml,xmlnodelist,

-2

Ответов: 1


0

Попробуйте xml linq с помощью словаря для получения идентификаторов

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Xml.Linq;

namespace ConsoleApplication51
{

    class Program
    {
        const string FILENAME = @"c:    emp     est.xml";

        static void Main(string[] args)
        {
            XDocument doc = XDocument.Load(FILENAME);

            var results = doc.Descendants("Friend").Select(x => new {
                fName = (string)x.Element("FName"),
                lName = (string)x.Element("LName"),
                age = (int)x.Element("Age"),
                ids = x.Descendants("FriendId")
                   .GroupBy(y => (string)y.Attribute("IdType"), z => (string)z)
                   .ToDictionary(y => y.Key, z => z.FirstOrDefault())
            }).ToList();



        }
    }


}

введите описание изображения здесь

C #, XML, XmlNodeList,
Похожие вопросы
Яндекс.Метрика