我正在从谷歌搜索设备获得xslt 2.0形成的响应并使用.net 3.5我想将这些更改为xslt 1.0文档。原因是XSLCompileTransform崩溃使用更新的xslt文档。
有什么属性,我会改变这个来改变它?
因为所有者是政府而无法发布邮政编码。 //编辑:为什么人们会低估这个问题?至少要发表评论。我真的不能留下更多信息,并得到了我想要的答案。
答案 0 :(得分:2)
有适用于.NET 3.5的XSLT 2.0处理器,例如.NET版Saxon 9,AltovaXML(仅通过COM互操作)和XmlPrime。使用其中一个,您应该能够使用.NET 3.5运行XSLT 2.0样式表。
如果您想更改XSLT 2.0代码以使用XslCompiledTransform等XSLT 1.0处理器运行,那么我同意评论中提出的建议,您需要检查代码或向我们显示以允许我们检查它仅适用于XSLT 2.0功能。文章http://blogs.msdn.com/b/xmlteam/archive/2011/10/09/xslt-1-0-biggest-issues-kind-of-solved.aspx可以提供帮助。
唯一简单快速的更改是将version="2.0"
上的xsl:stylesheet
属性分别更改为xsl:transform
version="1.0"
,但这种方式当然是XSLT 1.0处理器继续如果它使用像for-each-group
这样的XSLT 2.0功能,则拒绝样式表代码。