Je vois ce message d'exception provenant de XslCompiledTransform.Transform(), mais après avoir géré l'exception, la transformation XSL semble toujours avoir réussi. Le message complet d'exception est:"Texte de jeton dans l'état EndRootElement entraînerait un document XML non valide"
texte Token dans l'état EndRootElement se traduirait par un document XML non valide. Assurez-vous que le paramètre ConformanceLevel est défini sur ConformanceLevel.Fragment ou ConformanceLevel.Auto si vous souhaitez écrire un fragment XML.
La feuille de style ressemble à ceci:
<xsl:stylesheet version="1.0" xmlns:ext="ext:extensions" xmlns:f="http://schemas.foo.com/FOAMSchema">
<xsl:template match="/Root/Documents/PO/DROPSHIP">
<Transactions>
<Transaction>
<f:partnerTransmission>
<transmission_id>
<xsl:value-of select="ext:NewGUID()"/>
</transmission_id>
<partner_code>
<xsl:value-of select="/Root/@PartnerCode"/>
</partner_code>
<control_nbr>
<xsl:value-of select="@GS_CNTRL_NUM"/>
</control_nbr>
<creationTime>
<xsl:value-of select="ext:ConvertToStandardDateTime(@DATE,@TIME,'ISO8601Basic')"/>
</creationTime>
<direction>I</direction>
<messageCount>
<xsl:value-of select="count(ORDERS/ORDER)"/>
</messageCount>
<syntax>XML</syntax>
<format>BARBAZ</format>
<deliveryMethod>FTP</deliveryMethod>
</f:partnerTransmission>
</Transaction>
</Transactions>
</xsl:template>
</xsl:stylesheet>
Le XML généré ressemble à ceci:
<Transactions xmlns="http://schemas.foo.com/IntegrationProfile" xmlns:ext="ext:extensions">
<Transaction>
<f:partnerTransmission xmlns:f="http://schemas.foo.com/FOAMSchema">
<transmission_id>a5e0ec76-6c24-426b-9eb5-aef9c45d913f</transmission_id>
<partner_code>VN000033</partner_code>
<control_nbr>650</control_nbr>
<creationTime>9/27/2008 12:51:00 AM</creationTime>
<direction>I</direction>
<messageCount>2</messageCount>
<syntax>XML</syntax>
<format>BARBAZ</format>
<deliveryMethod>FTP</deliveryMethod>
</f:partnerTransmission>
</Transaction>
</Transactions>
Ce qui précède est ce que je reçois quand je surprends et ignorer l'exception.
Je n'ai pas réussi à trouver un moyen de définir ConformanceLevel (la propriété est en lecture seule), mais en même temps, je ne pense pas qu'il y ait un problème ici de toute façon.
Est-ce que ma sortie constitue un fragment XML? Est-ce qu'il me manque quelque chose dans la feuille de style?
@ Chris - vous ne jamais comprendre cela? J'obtiens cette erreur –