public static Stream ResponseTransform(Stream xmlStream, Stream xslStream)
{
XslCompiledTransform xslt = new XslCompiledTransform();
XsltSettings setting = new XsltSettings();
setting.EnableScript = true;
xslStream.Position = 0;
XmlReader xsltReader = XmlReader.Create(new StreamReader(xslStream));
xslt.Load(xsltReader, setting, new XmlUrlResolver());
xmlStream.Position = 0;
XPathDocument doc = new XPathDocument(xmlStream); Stream sOutput = new MemoryStream();
XmlWriterSettings writerSettings = new XmlWriterSettings();
writerSettings.Encoding = System.Text.Encoding.GetEncoding("Windows-1252");
using (XmlWriter writer = XmlWriter.Create(sOutput, writerSettings))
{
xslt.Transform(doc, writer);
writer.Close();
} return sOutput;
}
{
XslCompiledTransform xslt = new XslCompiledTransform();
XsltSettings setting = new XsltSettings();
setting.EnableScript = true;
xslStream.Position = 0;
XmlReader xsltReader = XmlReader.Create(new StreamReader(xslStream));
xslt.Load(xsltReader, setting, new XmlUrlResolver());
xmlStream.Position = 0;
XPathDocument doc = new XPathDocument(xmlStream); Stream sOutput = new MemoryStream();
XmlWriterSettings writerSettings = new XmlWriterSettings();
writerSettings.Encoding = System.Text.Encoding.GetEncoding("Windows-1252");
using (XmlWriter writer = XmlWriter.Create(sOutput, writerSettings))
{
xslt.Transform(doc, writer);
writer.Close();
} return sOutput;
}
public static Stream ResponseTransform(Stream xmlStream, Stream xslStream)//两个流参数
{
XslCompiledTransform xslt = new XslCompiledTransform();//new xml转xsl 转换对象
XsltSettings setting = new XsltSettings();//设置对象
setting.EnableScript = true;//EnableScript 开启
xslStream.Position = 0;//xls 开始位置0
XmlReader xsltReader = XmlReader.Create(new StreamReader(xslStream));//创建xsltReader 对象,从参数一创建
xslt.Load(xsltReader, setting, new XmlUrlResolver());//xslt加载 xsltReader 对象
xmlStream.Position = 0;
XPathDocument doc = new XPathDocument(xmlStream);//创建XPathDocument 对象 Stream sOutput = new MemoryStream();//new 输出流
XmlWriterSettings writerSettings = new XmlWriterSettings();//new 输出设置对象
writerSettings.Encoding = System.Text.Encoding.GetEncoding("Windows-1252");//设置输出编码
using (XmlWriter writer = XmlWriter.Create(sOutput, writerSettings))
{
xslt.Transform(doc, writer);//开始转换
writer.Close();
} return sOutput;
}
更多解释看下链接
http://www.cnblogs.com/litsword/archive/2010/06/01/1748992.html