Read XML node using the XML path : XPath « XML « C# / C Sharp






Read XML node using the XML path

     

using System;
using System.Xml;

public class SellItems {
  

  static void Main(string [] args) {
    XmlDocument inventory = new XmlDocument();
    inventory.Load("inventory.xml");

    XmlNodeList elements = inventory.SelectNodes("//inventory/items/item");
    foreach (XmlElement element in elements) {
        string productCode = element.GetAttribute("productCode");
        int quantitySold = Int32.Parse(element.GetAttribute("quantity"));

        Console.WriteLine(quantitySold);
        
        string xPathExpression = "//items/item[@productCode='" + productCode + "']";
        XmlElement inventoryItem = (XmlElement)inventory.SelectSingleNode(xPathExpression);
    
        int quantity = Int32.Parse(inventoryItem.GetAttribute("quantity"));
        quantity -= quantitySold;
        inventoryItem.SetAttribute("quantity",quantity.ToString());
    }
    inventory.Save("inventory.xml");
  }
}

/*
<inventory>
  <date year="2006" month="8" day="27" />
  <items>
    <item quantity="5" productCode="01" description="PHP"  unitCost="9.95" />
    <item quantity="3" productCode="02" description="Perl" unitCost="4.95" />
  </items>
</inventory>
*/
           
         
    
    
    
    
  








Related examples in the same category

1.XPathNavigator
2.XPathNodeIterator
3.Select by path
4.Find Elements with an XPath SearchFind Elements with an XPath Search
5.XPath Query Demo
6.XmlQuery Example
7. XPath Expression Syntax
8.Using XPath to get string value, integer value and boolean value
9.Extensions.XPathSelectElement selects an XElement using a XPath expression
10.Extensions.XPathSelectElements Selects a collection of elements using an XPath expression.
11.Returns the string result from evaluating an xpath expression against the given document and context.
12.Gets the text value from the element located by the given XPath.
13.Returns the inner text of the single node selected from the specified xpath if found; otherwise, null.
14.Get an array of nodes matching an XPath expression
15.Schema Reference Util