How do I use XslCompiledTransform when input XML and transform XSL are strings. How do I get the transformation result as a string?
18,979
You can use XmlReader and StringReader respectively 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();
}
}
}
Author by
vanpersil
Updated on July 03, 2022Comments
-
vanpersil almost 2 years
I have one string inputXMLString, and the second one containg transform XSL named transformXSLString. Both of them are correctly formatted xml's.
How to perform the transformation with XslCompiledTransform in C# so as to get the result also as a string, let's say resultXMLString?
-
enforge about 9 yearsThanks! Seems a bit nilly willy to have to create a stringreader then an xmlreader then stringwriter ... but this worked for me.