如何将VS2003的XslTransform转换成VS2005的XslCompiledTransform?

How to convert from XslTransform of VS2003 to XslCompiledTransform of VS2005?

我们目前正在将我们的项目从 VS2003 转换为 VS2005,我正在寻找将使用 XslTransform 的代码转换为 XslCompiledTransform 的正确方法。

改变class名字没什么大不了的,但是当涉及到使用时 XslCompiledTransform's 转换方法,我有问题。

XslTransform's 转换方法接受 XPathDocument 对象之前,现在 Transfrom 方法期望 XmlReader 相反:

代码如下:

XslCompiledTransform xslt = new XslCompiledTransform();
XPathDocument doc = new XPathDocument(new StringReader(DS.GetXml().ToString()));
StringWriter sw = new StringWriter();
xslt.Transform(doc,null,sw,null);

此外,新的 Transform 方法需要 System.Xml.XmlWriter 而不是 System.IO.StringWriter

解决这个问题的最佳方法是什么?

谢谢

下面link描述了XslCompiledTransform和XslTransform的区别类。

A section 在两个版本中也有一些代码示例。