I have an XML file, in which I want to extract data from the node whose name will be passed dynamically. Once the node name is received, I want to extract the data of the nodes with the node name and pass it to the Stored Procedure. Following is my code. I have never done this so please can you explain how to go about it.
string yourpath = Environment.CurrentDirectory + @"\DataItemTables.xml";
System.Xml.Linq.XDocument myxml = System.Xml.Linq.XDocument.Load(yourpath);
XmlDocument doc = new XmlDocument();
doc.LoadXml(myxml.ToString());
XmlNodeList xnList = doc.SelectNodes("/abc/Abcd/Segment[@Name='AAA']");
foreach (XmlNode xn in xnList)
{
if (xn.HasChildNodes)
{
foreach (XmlNode item1 in xn.ChildNodes)
{
Console.WriteLine(item1.InnerText);
}
}
}
Following is my XML
<Tables>
<Table name="Test">
<tablename>TestTable</tablename>
<refTable>NULL</refTable>
<refTableIDColumn>NULL</refTableIDColumn>
</Table>
<Table name="Test">
<tablename>OutlineURL</tablename>
<refTable>TestTable</refTable>
<refTableIDColumn>TestTableID</refTableIDColumn>
</Table>
<Table name="Test">
<tablename>OutlineSummary</tablename>
<refTable>TestTable</refTable>
<refTableIDColumn>TestTableID</refTableIDColumn>
</Table>
<Table name="Test">
<tablename>TestForm</tablename>
<refTable>TestTable</refTable>
<refTableIDColumn>TestTableID</refTableIDColumn>
</Table>
</Tables>
I am using some codes from google. I want to read nodes having names which is passed dynamically. Extract all the data from it, and send the data as parameter as XML to stored procedure.