I have one XmlNodeList, I want to create two XmlNodeList out of this. I will be checking for some tag inside each item in List, on the basis of that tag presence I will be adding them to one of the list which I have defined.
I was trying to add the list but I did not any method to add the particular item to a new XmlNodeList which is null in the start . Please help out. What I am missing here.
I have tried List<XmlNode> , it is throwing error System.ArgumentNullException: 'Value cannot be null. Parameter name: source'
class Program
{
static void Main(string[] args)
{
//Import XMl
// XmlNode list as name NEW
foreach(XmlNode emp in NEW)
{
if (emp != null)
{
AddNewList(emp);
}
}
}
public static void AddNewList(XmlNode emp)
{
//Checking for some tag
if(tag!=null)
{
// It is throwing error
currentList.Append(emp);
}
}
public XmlNodeList currentList = null;
public XmlNodeList previousList = null;
}
}
XmlNodefrom someXmlDocument, then add it into theXmlDocumentDOM hierarchy. anXmlNodeListis just a filtered set of nodes from a document, to add to the list you have to add to the document in such a way that it gets included in the filter. This is one of the reasons it might be easier to switch to LINQ to XML andXElementby the way. See: How to create an XML document using XmlDocument?.XmlNodeListwhich is a filtered view into anXmlDocument. From the docs: Changes to the children of the node object that the XmlNodeList collection was created from are immediately reflected in the nodes returned by the XmlNodeList properties and methods. XmlNodeList supports iteration and indexed access. Better to switch to LINQ to XML andXElement.