Bonjour à tous,

Je voudrais transformater un document XML avec une xslt en c# afin de l'afficher dans une page HTML. J'arrive à effectuer celle-ci, mais lors de la transformation le code ISO de la XSLT n'est pas prise en compte. Exemple les espaces &#160.
Je pense qu'il manque une étape avant la transformation, mais je n'ai pas trouvé d'info sur le net
Avez vous une idée ?

Voici le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            string xmlPath = Server.MapPath(@"App_Data/docXml.xml");
            string xsltPath = Server.MapPath("xslt.xsl");
 
            // open a XML file
            XmlReader reader = XmlReader.Create(xmlPath);
            //Load the XML file in XmlDocument
            XmlDocument xpathDoc = new XmlDocument();
            xpathDoc.Load(reader);
 
            // Load XSLT file
            XslCompiledTransform transform = new XslCompiledTransform();
            transform.Load(xsltPath);
            //initialisation code/fonction C sharp in XSLT
            XsltArgumentList argsList = new XsltArgumentList();
            argsList.AddExtensionObject("pda:MyUtils", new XsltSearchImg());
            // Execute the transform and output the results to a file.aspx
            transform.Transform(xpathDoc, argsList, Response.Output);
        }
        catch (Exception ex)
        {
            Response.Write(ex.Message);
        }
    }
Voici un extrait de XSLT:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
<xsl:template match="notes|non-normative-note">
	<xsl:element name="div">
	     <xsl:element name="dl">
	       <xsl:attribute name="class">nrmNote</xsl:attribute>
	       <xsl:element name="dt">
	         <xsl:value-of select="label"/><xsl:text>#160:&#160</xsl:text>
	       </xsl:element>
	       <xsl:element name="dd">
	         <xsl:apply-templates select="./*[name(.) != 'label']" />
	       </xsl:element>
	     </xsl:element>
	</xsl:element>
</xsl:template>