Получить поля в паре ключ-значение из XML, используя C# - PullRequest
0 голосов
/ 04 мая 2020

У меня есть XML, как показано ниже:

<test-run>
 <test-suite>
 <test-suite>
   <test-case id="1234" name="ABC" result="Passed">
   </test-case>
 </test-suite>
 </test-suite>
</test-run>

Это пример файла XML, который я использую. Как извлечь из этого идентификатор, имя и результат, используя C#?

1 Ответ

1 голос
/ 04 мая 2020

Использование xml linq:

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

namespace ConsoleApplication1
{
    class Program
    {
        const string FILENAME = @"c:\temp\test.xml";
        static void Main(string[] args)
        {
            XDocument doc = XDocument.Load(FILENAME);

            List<Result> results = doc.Descendants("test-case").Select(x => new Result()
            {
                id = (string)x.Attribute("id"),
                name = (string)x.Attribute("name"),
                result = (string)x.Attribute("result")
            }).ToList();
        }
    }
    public class Result
    {
        public string id { get; set; }
        public string name { get; set; }
        public string result { get; set; }
    }
}
...