Use XML Path to locate Node and edit its value
<%-- Code Revised from Professional ASP.NET 2.0 XML (Programmer to Programmer) (Paperback) by Thiru Thangarathinam # Publisher: Wrox (January 18, 2006) # Language: English # ISBN: 0764596772 --%> <%@ Page Language="C#" %> <%@ Import Namespace="System.Xml" %> <%@ Import Namespace="System.Xml.XPath" %> <script runat="server"> void Page_Load(object sender, EventArgs e) { //Set the ContentType to XML to write XML values Response.ContentType = "text/xml"; string xmlPath = MapPath("MyBooks.xml"); XmlDocument document = new XmlDocument(); document.Load(xmlPath); XPathNavigator navigator = document.CreateNavigator(); int count = navigator.Select("/bookstore/book").Count; //Navigate to the right nodes navigator.MoveToChild("bookstore", ""); navigator.MoveToChild("book", ""); //Loop through all the book nodes for(int i = 0; i < count; i++) { navigator.MoveToChild("price", ""); double discount = navigator.ValueAsDouble +1; navigator.CreateAttribute("", "discount", "", discount.ToString()); //Move to the parent book element navigator.MoveToParent(); //Move to the next sibling book element navigator.MoveToNext(); } navigator.MoveToRoot(); Response.Write (navigator.OuterXml); } </script>