Как использовать XslCompiledTransform, когда входные XML и transform XSL являются строками. Как получить результат преобразования в виде строки?
У меня есть одна строка inputXMLString, а вторая-containg transform XSL с именем transformXSLString. Оба они правильно отформатированы в xml.
Как выполнить преобразование с помощью XslCompiledTransform в C# , чтобы получить результат также в виде строки, скажем resultXMLString?
1 ответов
вы можете использовать XmlReader и StringReader соответственно StringWriter:
string inputXML = "...";
string transformXSL = "...";
XslCompiledTransform proc = new XslCompiledTransform();
using (StringReader sr = new StringReader(transformXSL))
{
using (XmlReader xr = XmlReader.Create(sr))
{
proc.Load(xr);
}
}
string resultXML;
using (StringReader sr = new StringReader(inputXML))
{
using (XmlReader xr = XmlReader.Create(sr))
{
using (StringWriter sw = new StringWriter())
{
proc.Transform(xr, null, sw);
resultXML = sw.ToString();
}
}
}