Я делаю xslt-преобразование внутри моей программы на c #.Когда я запускаю xslt сам по себе, он выводит очень хорошо, но когда я запускаю его из моей программы на c #, он всегда пропускает:
<?xml version="1.0" encoding="UTF-8"?>
в верхней части получающегося XML-документа.Мой XSLT-файл выглядит следующим образом:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:hd="http://www.hotdocs.com/schemas/component_library/2009"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xml="http://www.w3.org/XML/1998/namespace">
<xsl:output method="xml" omit-xml-declaration="no" version="1.0" encoding="UTF-8"/>
<xsl:template match="/xsd:schema">
<hd:componentLibrary xmlns:hd="something" version="10">
</hd:componentLibrary>
</xsl:template>
<xsl:template match="text()" />
</xsl:stylesheet>
Я запускаю xslt в моей программе на c # следующим образом:
XPathDocument myXPathDoc = new XPathDocument(PathToXMLDocument);
XslCompiledTransform myXslTrans = new XslCompiledTransform();
myXslTrans.Load(PathToXSLTDocument);
XmlTextWriter myWriter = new XmlTextWriter(PathToOutputLocation, null);
myXslTrans.Transform(myXPathDoc,null,myWriter);
myWriter.Close();
Я пробовал документ xslt без строки вывода xsl:, ноэто, кажется, не помогает.
Как я могу получить тег? xml в верхней части моего выведенного XML-файла?
Спасибо