xsl-list
[Top] [All Lists]

Re: Nodelist as input parameter to XSL stylesheet in .NET

2004-09-22 05:36:40
Ragulf Pickaxe wrote:

I am sorry for this vendor-specific question, but I really hope that someone can help me out here.

Using C# in .NET, I have an aspx file with an Xml control (Xml1). I try to pass a nodeset as a parameter to the xsl file

that transform the xml document (oXmlDoc). This is not succesful. Can someone tell me what I am doing wrong, and how I am

able to pass a nodelist to the stylesheet?

In .NET XSLT data types are mapped to .NET types in the following way:
string     System.String
boolean    System.Boolean
number     System.Double
RTF        System.Xml.XPath.XPathNavigator
node-set   System.Xml.XPath.XPathNodeIterator

So to pass nodeset you have to pass an instance of the XPathNodeIterator class.

C# code snippet:
System.Xml.XmlDocument oXmlDoc = new System.Xml.XmlDocument();
oXmlDoc.LoadXml(sXml); // sXml is the string containing the XML
System.Xml.XmlNodeList oList = oXmlDoc.SelectNodes("/Root/Elem[(_at_)ID='1' or @ID='3' or @ID='4']");

XPathNodeIterator oList = oXmlDoc.CreateNavigator().Select("/Root/Elem[(_at_)ID='1' or @ID='3' or @ID='4']");

--
Oleg Tkachenko
http://blog.tkachenko.com
Multiconn Technologies, Israel



<Prev in Thread] Current Thread [Next in Thread>