1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| public void DoCloningNode(string sourceFile, string pathNode, int num)
{
XmlDocument doc = new XmlDocument();
try
{
doc.Load(sourceFile);
for (int i = 1; i <= num; i++)
{
XmlNode node = doc.SelectSingleNode(pathLNode);
const string pathWhereToClone = "/SCL/Sub/Vol";
if (node != null)
{
XmlNode clone = node.Clone();
//Adding clone(s) in the specific path
XmlElement element = (XmlElement)doc.SelectSingleNode(pathWhereToClone);
if (element != null)
{
element.AppendChild(clone);
}
}
}
//Saving doc with clones
doc.Save(sourceFile);
}
catch (Exception e)
{
Console.WriteLine(e);
Console.ReadLine();
}
} |