Applying XSL Transformation on an XmlDataSource Control
<%-- Code Revised from Professional ASP.NET 2.0 XML (Programmer to Programmer) (Paperback) by Thiru Thangarathinam # Publisher: Wrox (January 18, 2006) # Language: English # ISBN: 0764596772 --%> <%@ Page Language="C#" %> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>Applying XSL Transformation on an XmlDataSource Control</title> </head> <body> <form id="form1" runat="server"> <div> <asp:TreeView ID="TreeView1" Runat="server" DataSourceID="XmlDataSource1" /> <asp:XmlDataSource ID="XmlDataSource1" Runat="server" DataFile="Bookstore.xml" TransformFile="Bookstore.xsl" /> </div> </form> </body> </html> <%-- <bookstore> <genre name="Fiction"> <book ISBN="10-861003-324" Title="title 1" Price="19.99"> <chapter num="1" name="Introduction"> A </chapter> <chapter num="2" name="Body"> B </chapter> <chapter num="3" name="Conclusion"> C </chapter> </book> <book ISBN="1-861001-57-5" Title="title " Price="24.95"> <chapter num="1" name="Introduction"> D </chapter> <chapter num="2" name="Body"> E </chapter> <chapter num="3" name="Conclusion"> F </chapter> </book> </genre> <genre name="NonFiction"> <book ISBN="10-861003-324" Title="title 2" Price="19.99"> <chapter num="1" name="Introduction"> G </chapter> <chapter num="2" name="Body"> H </chapter> <chapter num="3" name="Conclusion"> I </chapter> </book> <book ISBN="1-861001-57-6" Title="title 3" Price="27.95"> <chapter num="1" name="Introduction"> J </chapter> <chapter num="2" name="Body"> K </chapter> <chapter num="3" name="Conclusion"> L </chapter> </book> </genre> </bookstore> --%> <%-- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="bookstore"> <bookstore> <xsl:apply-templates select="genre"/> </bookstore> </xsl:template> <xsl:template match="genre"> <genre> <xsl:attribute name="name"> <xsl:value-of select="@name"/> </xsl:attribute> <xsl:apply-templates select="book"/> </genre> </xsl:template> <xsl:template match="book"> <book> <xsl:attribute name="ISBN"> <xsl:value-of select="@ISBN"/> </xsl:attribute> <xsl:element name="title"> <xsl:value-of select="title"/> </xsl:element> <xsl:element name="price"> <xsl:value-of select="price"/> </xsl:element> <xsl:apply-templates select="chapters/chapter" /> </book> </xsl:template> <xsl:template match="chapter"> <chapter> <xsl:attribute name="num"> <xsl:value-of select="@num"/> </xsl:attribute> <xsl:attribute name="name"> <xsl:value-of select="@name"/> </xsl:attribute> <xsl:apply-templates/> </chapter> </xsl:template> </xsl:stylesheet> --%>