我有一个字符串inputXMLString,第二个包含名为transformXSLString的变换XSL。它们都是正确格式化的xml。
如何在C#中使用XslCompiledTransform执行转换,以便将结果也作为字符串,让我们说resultXMLString?
答案 0 :(得分:19)
您可以分别使用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();
}
}
}