function which used in c# file
private static XDocument SortUserInfo(XmlDocument UserInfo)
{
XmlDocument sortedXml = new XmlDocument();
XslCompiledTransform proc = new XslCompiledTransform();
proc.Load("C:\\Users\\graycell\\Desktop\\MultiHandleSliderExtender_w_Chart\\MultiHandleSliderExtender_w_Chart\\App_Data\\XSLTFile.xslt");
using (XmlWriter writer = sortedXml.CreateNavigator().AppendChild())
{
proc.Transform(UserInfo, writer);
}
string sorted = sortedXml.InnerXml;
return XDocument.Parse(sorted);
}
-------------------------------------------------------------------------------------------------
xml file-----
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="XSLTFile.xslt"?>
<CarsList>
<Car Date="01/01/2005" YearMonth="200501" CarBrand="Audi" Count="15" />
<Car Date="01/02/2005" YearMonth="200501" CarBrand="Audi" Count="20" />
<Car Date="01/03/2005" YearMonth="200501" CarBrand="Audi" Count="15" />
<Car Date="01/04/2005" YearMonth="200501" CarBrand="Audi" Count="20" />
<Car Date="01/05/2005" YearMonth="200501" CarBrand="Audi" Count="15" />
<Car Date="01/06/2005" YearMonth="200501" CarBrand="Audi" Count="20" />
<Car Date="01/07/2005" YearMonth="200501" CarBrand="Audi" Count="15" />
<Car Date="01/08/2005" YearMonth="200501" CarBrand="Audi" Count="20" />
<Car Date="01/09/2005" YearMonth="200501" CarBrand="Audi" Count="15" />
<Car Date="01/10/2005" YearMonth="200501" CarBrand="Audi" Count="20" />
<Car Date="01/11/2005" YearMonth="200501" CarBrand="Audi" Count="15" />
<Car Date="01/12/2005" YearMonth="200501" CarBrand="Audi" Count="20" />
<Car Date="01/13/2005" YearMonth="200501" CarBrand="Audi" Count="15" />
<Car Date="01/14/2005" YearMonth="200501" CarBrand="Audi" Count="20" />
<Car Date="01/15/2005" YearMonth="200501" CarBrand="Audi" Count="15" />
<Car Date="01/16/2005" YearMonth="200501" CarBrand="Audi" Count="20" />
</CarsList>
----------------------------------------------------------------------------------------------------
xslt file-----------------------
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<CarsList>
<xsl:for-each select="CarsList/Car">
<xsl:sort select="current()/@CarBrand" order ="descending" />
<Car>
<xsl:attribute name="Date">
<xsl:value-of select="current()/@Date"/>
</xsl:attribute>
<xsl:attribute name="CarBrand">
<xsl:value-of select="current()/@CarBrand"/>
</xsl:attribute>
<xsl:attribute name="YearMonth">
<xsl:value-of select="current()/@YearMonth"/>
</xsl:attribute>
<xsl:attribute name="Count">
<xsl:value-of select="current()/@Count"/>
</xsl:attribute>
</Car>
</xsl:for-each>
</CarsList>
</xsl:template>
</xsl:stylesheet>
No comments:
Post a Comment