Visual Studio 2010中XML/XSD智能感知功能无法正常工作

6
我正在VS 2010中处理xml和xsd文件,但智能感知无法使用。然而,在VS 2008中,相同的文件可以使用智能感知。
当我输入“<xs:”选项时,如“attribute”、“complexType”、“simpleType”或“element”不会出现。
我是否遗漏了VS 2008和VS 2010之间的某些差异?
我向我的解决方案添加一个xsd文件。所有正确的命名空间都会自动生成,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="XMLSchema2"
    targetNamespace="http://tempuri.org/XMLSchema2.xsd"
    elementFormDefault="qualified"
    xmlns="http://tempuri.org/XMLSchema2.xsd"
    xmlns:mstns="http://tempuri.org/XMLSchema2.xsd"
    xmlns:xs="http://www.w3.org/2001/XMLSchema">

</xs:schema>

"xsdschema.xsd" 文件在 "C:\Program Files\Microsoft Visual Studio 10.0\xml\Schemas" 目录中。
在 XML Schemas 对话框的 "Use" 列中有一个勾选标记。

它对我来说运行良好。你使用的是哪个版本的VS2010?你是使用设计器还是只是“查看代码”模式? - John Saunders
我有VS 2010专业版10.0.30319.1。我正在使用“查看代码”模式。 - Jason
2个回答

10

我发现了问题所在。Visual Studio 2010 导入了来自 Visual Studio 2008 的模式。这导致出现类似下面的重复警告:

Warning The global attribute 'http://www.w3.org/XML/1998/namespace:lang' has already been declared. C:\Program Files\Microsoft Visual Studio 10.0\xml\Schemas\xml.xsd   
在XML Schema对话框中,我从模式缓存中删除了旧的内容。您需要重新启动Visual Studio。

2
如果未解决警告,例如在相同模式命名空间中的不同文件中定义重复的复杂类型,则智能感知和模式验证将消失。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接