在 C# 中解析 Web 服务 xml 响应以获取变量中的特定节点值

parse web service xml response in c# to get specific node value in variables

using System;
using System.Xml;
using SampleWebserviceApp.net.myasp.deepakgaur;
namespace SampleWebserviceApp
{
 class Program
 {
    static void Main(string[] args)
    {
        InventoryWebservice Webservice = new InventoryWebservice();
        var value = Webservice.GetDataByID("1");
        XmlDocument doc = new XmlDocument();
        doc.LoadXml(value);
        string id = doc.GetElementsByTagName("Id").ToString();
        Console.WriteLine(value);
        Console.WriteLine(id);
        Console.ReadKey();
       }
    }
}

任何人都可以帮助我如何从我的网络服务响应中获取节点值

<NewDataSet>
  <Table>
    <Id>1         </Id>
    <ProductName>Hp Laptop</ProductName>
    <SerialNumber>abc111    </SerialNumber>
    <Status>Delivered           </Status>
    <CustomerName>Shatakshi</CustomerName>
  </Table>
</NewDataSet>

我想做的是在各自的变量中获取 id、productname、serial number、status、cusomername 值
请帮助我了解如何实现这一目标。

使用 Linq XML。请注意,我没有 Web 服务 InventoryWebservice,所以我只是手动创建一个 xml 文档。

using System;
using System.IO;
using System.Linq;
using System.Xml.Linq;

class Program
{
    static void Main()
    {
        // create an XML document manually
        var doc = XDocument.Load(new StringReader(@"<NewDataSet>
  <Table>
    <Id>1         </Id>
    <ProductName>Hp Laptop</ProductName>
    <SerialNumber>abc111    </SerialNumber>
    <Status>Delivered           </Status>
    <CustomerName>Shatakshi</CustomerName>
  </Table>
</NewDataSet>"));

        // query the XML document
        var product = doc
            .Descendants("Table")
            .Select(x => new {
                        Id = x.Element("Id").Value,
                        ProductName = x.Element("ProductName").Value,
                        SerialNumber = x.Element("SerialNumber").Value,
                        Status = x.Element("Status").Value,
                        CustomerName = x.Element("CustomerName").Value
                        })
            .FirstOrDefault();

        // print the result
        if (product != null)
        {
            Console.WriteLine("Id = {0}", product.Id);
            Console.WriteLine("Product Name = {0}", product.ProductName);
            Console.WriteLine("Serial Number = {0}", product.SerialNumber);
            Console.WriteLine("Status = {0}", product.Status);
            Console.WriteLine("Customer Name = {0}", product.CustomerName);
        }

        Console.Write("Press any key to continue . . . ");
        Console.ReadKey(true);
    }
}