Passage de paramètre à un XSLT
Bonjour,
Alors voilà je génère des composants ASP grâce à du XML/XSLT.
Cependant je voulais mettre mes différentes pages dans un seul fichier XML au lieu de 4 ou 5, donc je pensais mettre des paramètres
Voici un bout du fichier XML à traiter
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
<?xml version="1.0" encoding="utf-8" ?>
<form>
<pages>
<page name="Statistiques" type="form">
</page>
<page name="Historique" type="form">
</page>
<page name="Proprietes" type="popup">
</page>
</pages>
</form> |
Pour le code XSLT (en partie aussi ...)
Code:
1 2 3 4 5 6 7 8 9 10 11
| <?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:asp="remove" xmlns:ccl="removeToo"
xmlns:msxml="urn:schemas-microsoft-com:xslt">
<xsl:output method="xml" indent="yes" encoding="utf-8" omit-xml-declaration="yes"></xsl:output>
<xsl:template match="/">
<xsl:param name="pageid"/>
<xsl:for-each select="form/pages/page[@name=$pageid]">
<xsl:call-template name="table" />
</xsl:for-each> |
Et enfin une partie du code C#
Code:
1 2 3 4 5 6 7 8
| XslCompiledTransform xsl = new XslCompiledTransform();
xsl.Load(XslFile);
XsltArgumentList xslarg = new XsltArgumentList();
xslarg.AddParam("pageid", string.Empty, "Historique");
StringWriter sw = new StringWriter();
xsl.Transform(xdoc, xslarg, sw); |
Donc avant l'intégration d'un paramètre ça marche, cependant dès que je mets en place un paramètre, les pages ne sont plus fonctionnelles