在Visual Studio中编辑XSLT文档是基于XSD架构的(https://docs.microsoft.com/en-us/visualstudio/xml-tools/schema-cache),默认情况下使用的架构(xslt.xsd
)支持XSLT 1.0。
然而,自从1999年XSLT 1.0成为W3C推荐以来,XSLT世界已经在2007年发展到XSLT 2.0,最终在2017年发展到XSLT 3.0。而.NET版本的Saxon 9.8 HE和XmlPrime则有.NET这些标准的实现,因此希望使用比默认XSLT 1.0模式支持的更新版本的XSLT开发.NET应用程序,以便能够使用Visual Studio中的XML编辑器来编辑XSLT 2或3样式表。
我已经设法通过将模式http://www.w3.org/2007/schema-for-xslt20.xsd的编辑副本https://www.w3.org/TR/xslt-30/schema-for-xslt30.xsd分别while in the background it compiles放入模式缓存目录来获取XSLT 2或3的智能感知,但是接下来发生的是我编写的XSLT 2或者3使用编辑器{{3}}中的intellisense根据XSLT 1规则使用XslCompiledTransform进行XSLT代码,显然在我想创作XSLT 2或3时,给了我很多不相关和误导的错误。
所以有人知道是否有设置或API来禁用XML编辑器中的XSLT后台编译?