I have something like:
XmlDocument doc = new XmlDocument();
doc.Load(@"D:\filter.xml");
string filter1 = doc.SelectSingleNode("filter/f1").InnerText;
string filter2 = doc.SelectSingleNode("filter/f2").InnerText;
string filter3 = doc.SelectSingleNode("filter/f3").InnerText;
string filter4 = doc.SelectSingleNode("filter/f4").InnerText;
string filter5 = doc.SelectSingleNode("filter/f5").InnerText;
string filter6 = doc.SelectSingleNode("filter/f6").InnerText;
And so on...My question is how could I generate these strings in a loop?something like.
XmlDocument doc = new XmlDocument();
doc.Load(@"D:\filter.xml");
for (int i = 0; i < 7; i++)
{
string filter + i = doc.SelectSingleNode("filter/f" + i).InnerText;;
}
Fill a List<string>:
List<string> filterList = new List<string>();
for (int i = 0; i < 7; i++)
{
filterList.Add(doc.SelectSingleNode("filter/f" + i).InnerText);
}
Now you can access them via index, f.e. filter 5:
string filter5 = filterList[4]; // zero based
You want to use a collection, like List<string>:
XmlDocument doc = new XmlDocument();
doc.Load(@"D:\filter.xml");
var myList = new List<strinig>;
for (int i = 0; i < 7; i++)
{
myList.Add(doc.SelectSingleNode("filter/f" + i).InnerText);
}
Then you can use the list by referencing a string's index:
myValue = myList[3];
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With