我想如果我将架构附加到 XML 文档,我会获得所有标签和属性名称的 IntelliSense?但这似乎不起作用。我尝试将其添加到我的根标签中:
xsi:noNamespaceSchemaLocation="../../../schema1.xsd"
我还尝试将我的架构添加到 Visual Studio 中“属性”>“架构”下的架构列表中。
微软不在乎。我已经报告了这一点并发现了另一份报告...
https://developercommunity.visualstudio.com/t/Visual-Studio-2019-does-not-detect-xsd-s/1458785 https://developercommunity.visualstudio.com/t/intellisense-ignores-xsd-schema-definitions/554115?viewtype=all
我发现解决此问题的唯一方法是在 Visual Studio 中主动打开这些 xsd 架构。但请记住,如果您打开、关闭并重新打开 VS 的 xsd 架构,即使这些架构仍然显示为“打开”(因为它们在文件选项卡中可见),您仍然需要手动转到它们或重新打开在您恢复智能感知之前它们。
这是一个明显的回归,令人非常沮丧的是 MS 会忽略它。
我们遇到了类似的问题,我想在这里为其他人留下提示。
关闭 Visual Studio 后,Visual Studio 中的架构将被清除。永久添加它们似乎不是一个好主意,因为架构必须放置在电脑上的特殊文件夹中。因此,它们不能放入存储库中。如果更新架构,每个开发人员都必须在电脑上更新它。听起来不太好。
我们结束了,将方案添加到解决方案中。请注意,架构必须与 xml 处于同一级别或更高级别。我们在多个地方都需要它,因此我们将其添加到解决方案级别本身。
VS22 的更多信息
https://learn.microsoft.com/en-us/visualstudio/xml-tools/schema-cache?view=vs-2022