代码之家  ›  专栏  ›  技术社区  ›  Scott Baker

在样式表中添加xmlns:namespace声明时,VS2008 IntelliSense出错

  •  0
  • Scott Baker  · 技术社区  · 15 年前

    当我在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">
    

    IntelliSense仅显示包含ftid命名空间的选项包括

    <!--
    <![CDATA[
    <?
    

    如果删除引用,IntelliSense将唤醒并正常工作。我试过重新启动VS08,但我失败了。

    编辑: 明确地说,我不是在尝试获取ftid:namespace的intellisense;相反,xsl:namespace的intellisense在添加xmlns:ftid引用时停止工作,然后在删除引用时重新开始工作。有人能解释为什么吗?

    2 回复  |  直到 15 年前
        1
  •  0
  •   lavinio    15 年前

    它引用了模式吗?如果是这样,您可以将它引用的模式放入名为如下所示的目录中:

    {Visual Studio install drive}:\Program Files\Microsoft Visual Studio 9.0\Xml\Schemas
    

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

    this article on doing something similar for XInclude .

        2
  •  0
  •   Scott Baker    15 年前

    嗯,我重新安装了VS2008(出于其他原因),现在IntelliSense工作正常。我讨厌这种情况。