2009-11-17 7 views
0

Je veux utiliser les chaînes localisées des ressources dans le modèle xsl comme dans la page aspx, comme ceci: <%=GetLocalizedString("grid_numberof_claim")%>. J'essaie d'utiliserComment obtenir la valeur de la variable côté serveur dans le modèle xsl?

<xsl:text disable-output-escaping="yes"> 
    <![CDATA[<%=GetLocalizedString("grid_numberof_claim")%>]]> 
</xsl:text> 

mais ce n'est pas utile.

En fait, je peux passer des chaînes localisées à l'intérieur d'un nœud XML, par exemple "localisation". Mais je cherche moyen d'obtenir sa valeur dans le style aspx.

Répondre

2

L'utilisation du style ASPX n'est pas possible.

Vous pouvez utiliser XsltArgumentList pour envoyer des paramètres à votre modèle XSLT, comme expliqué ici: HOW TO: Execute Parameterized XSL Transformations in .NET Applications

EDIT: Oui, vous pouvez passer des arguments trop côté client.

xmldoc = ... // your xml document 

var xslt = new ActiveXObject("Msxml2.XSLTemplate.4.0"); 
var xslDoc = new ActiveXObject("Msxml2.FreeThreadedDOMDocument.4.0"); 

xslDoc.async = false; 
xslDoc.load("YourTemplate.xsl"); 
xslt.stylesheet = xslDoc; 

xslProc = xslt.createProcessor(); 
xslProc.input = xmldoc; 
xslProc.addParameter("param1", 123); 
xslProc.addParameter("param2", "abc"); 
xslProc.transform(); 

Mais côté client conduit à une autre solution: Vous pouvez renommer votre fichier XSLT pour ASPX et d'utiliser la syntaxe <%= %>

+0

Hm ... pas un mon cas. Je fais la transformation xslt du côté client, donc je ne peux pas passer XsltArgumentList. – Vokinneberg

+0

Très bien. Merci de répondre :) – Vokinneberg

Questions connexes