Visual Studio 2010中的XSLT 2.0 intellisense - 添加模式?

时间:2010-11-07 07:33:10

标签: xml visual-studio xslt xsd

我希望能够在XSLT中获得intellisense,但在Visual Studio中获得版本2.0

我知道默认情况下XSLT 2.0不支持 - 只有1.0 - 但是使用Saxon API你可以使用XSLT 2.0。

我很想得到intellisense,我认为这可以通过向Visual Studio添加XSLT 2.0架构来实现,但我不是百分百确定。

我的问题是我从哪里获得架构,我认为我可以下载它?

我在Visual Studio中将它安装在哪里?

2 个答案:

答案 0 :(得分:10)

我不得不调整以使VS2010 Professional显示Intellisense for XSLT 2.0。首先,下载文件http://www.w3.org/2007/schema-for-xslt20.xsd。然后,您需要编辑文件并从“xsl:import”元素中删除“schemaLocation”属性,这些元素位于注释后文档的开头。然后将此修改后的文件复制到[Your Visual Studio 10.0安装文件夹] \ Xml \ Schemas。如果你有VS运行重启它。打开您的XSLT文件,以便可以看到XML菜单并转到'XML-> Schemas ...'。在那里你会发现XSLT的版本1.0和2.0模式。您需要通过单击“使用”字段并选择“不使用此方案”来禁用1.0版。现在Intellisense应该可以工作。

删除'schemaLocation'属性的要求可能与.NET安全性阻止XML文档从Web检索文档有关。我不确定。无论如何,文件在本地可用,所以这不应该是任何问题。

编辑器应该通过查看<xsl:stylesheet version="2.0"...>来选择模式的2.0版本,但我不是XML专家,所以可能有一个比禁用模式版本1.0更好的解决方法。

答案 1 :(得分:1)

我不确定,但我认为这是您想要从W3网站获得的架构: http://www.w3.org/2007/schema-for-xslt20.xsd

现有的xslt.xsd文件(在我的安装中)在这里: C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ Xml \ Schemas \

请你回复你的结果 - 这看起来很有趣。