当我向样式表添加XMLNS:名称空间声明时,VS2008 Intellisense搞砸了

时间:2009-06-30 20:19:51

标签: xml visual-studio-2008 xslt intellisense

当我的XSL文件中有以下(默认)声明时,一切正常。当我输入“<”字符,intellisense窗口弹出所有xsl:namespace选项,如预期的那样。

<xsl:stylesheet version="1.0" 
            xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
            xmlns:msxsl="urn:schemas-microsoft-com:xslt" 
            exclude-result-prefixes="msxsl">

然而,当我添加这个简单的xmlns:reference时,intellisense以某种方式失去了它的小电子头脑,并忘记了所有关于xsl:namespace

<xsl:stylesheet version="1.0" 
            xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
            xmlns:msxsl="urn:schemas-microsoft-com:xslt" 
            xmlns:ftid="http://www.boeing.com/FTID-ML"
            exclude-result-prefixes="msxsl">

包含ftid命名空间的唯一智能感知选项是

<!--
<![CDATA[
<?

如果删除引用,intellisense会唤醒并正常工作。我尝试重新启动VS08,但我很茫然。

编辑:要明确,我不是要为ftid:命名空间获取intellisense;相反,当我添加xmlns:ftid引用时,xsl:namespace STOPS的intellisense工作,然后当我删除它时再次开始工作。任何人都可以解释原因吗?

2 个答案:

答案 0 :(得分:0)

它是否引用了架构?如果是这样,您可以将它引用的模式放入名为:

的目录中
{Visual Studio install drive}:\Program Files\Microsoft Visual Studio 9.0\Xml\Schemas

然后它应该工作(现在无法在本地测试,抱歉)。

请参阅this article on doing something similar for XInclude

答案 1 :(得分:0)

好吧,我重新安装了VS2008(由于其他原因),智能感知现在工作正常。发生这种情况时我讨厌它。