public static void UpdateAnXmlNode(string xmlFileName) { XmlDocument xDoc = new XmlDocument(); try { // load the configuration file xDoc.Load(xmlFileName); // find the node of interest from the key XmlNode theNode = xDoc.SelectSingleNode( @"/configuration/xxxConfiguration/moduleGroups/add[@trustName = 'Default']/modules"); bool customXmlLinePresent = false; if (theNode != null) { customXmlLinePresent = theNode.InnerXml.Contains( "XXX.YYY.Sandbox.DebugTree.Module"); } string extraXml = string.Empty; if (!customXmlLinePresent) extraXml += @"<add moduleType=""XXX.YYY.Sandbox.DebugTree.Module, XXX.YYY.Sandbox"" />" + Environment.NewLine; if (extraXml.Length > 0) { theNode.InnerXml += extraXml; xDoc.PreserveWhitespace = true; xDoc.Save(xmlFileName); } } catch (XmlException ex) { DoSomethingWithError(ex); } }
July 21, 2010
Quickly Add Xml To XmlDocument
This line loads an Xml document, looks for the presence of a particular line and if it is not there, adds it to the xml document. This is useful for updating a config file with a particular line of xml. Uses XPath to find the interesting element of the xml file.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment