修复:已声明全局元素"配置"

Mic*_*ers 74 c# xsd app-config stylesheet

我使用了如何解决"无法找到元素/属性<xxx>的架构信息"的第二个解决方案

即使用按钮创建XSD以创建方案.我将app.config中的样式表更改为app.xsd但现在我收到警告:

全局元素"配置"已在app.xsd中声明

即使更改名称,也会显示警告.有人有解决方案吗?

Bob*_*orn 175

重新启动对我不起作用,所以我想分享一些有效的方法.

首先,我刚刚升级到Windows 8.此问题在此之前没有发生.这个问题只发生在我的一个 app.config文件中.所以我决定将有问题的app.config与一个好的app.config进行比较.在Visual Studio中,打开app.config,我去了Xml -> Schemas.我注意到好的配置只检查了其中三个模式.坏的一个检查了相同的三个,加上一个DotNetConfig.xsd.在我将Use列更改为自动后,对于DotNetConfig.xsd,问题就消失了.

在此输入图像描述

在此输入图像描述

  • 对我来说是DotNetConfig.xsd.我想知道是不是因为改变了.net构建版本,因为我注意到了DotNetConfig45. (6认同)
  • 如果在选择其他行之前单击"确定",则无法识别更改. (6认同)
  • 这对我没有帮助.无论我做了什么,"不要使用","自动"或删除,都选择了DotNetConfig40.xsd和DotNetConfig.xsd.我尝试确保在进行选择后选择了另一行.我最后不得不将DotNetConfig.xsd重命名为"DotNetConfig DO NOT USE.xsd"以防止加载. (5认同)
  • 解决了这个问题.谢谢 (2认同)

Tom*_*nes 36

我对你提到的问题有类似的问题,我遵循了这些指示,一切都很好.确保EnterpriseLibrary.Configuration.xsdIS在%Program Files%\Microsoft Visual Studio [version] \Xml\Schemas\首先的,那么这样做:

Enterprise Library将架构安装到Visual Studio中,该架构提供IntelliSense®,用于在Visual Studio XML编辑器中编辑Enterprise Library配置文件.您必须先打开架构才能使用它.

启用企业库配置架构

  1. 在解决方案资源管理器中双击它,在Visual Studio中打开配置文件.

  2. 在XML菜单上,单击Schemas ...以打开XML Schemas对话框.

  3. 找到名为EnterpriseLibrary.Configuration.xsd的架构.这是自动安装的.但是,如果未在列表中显示,请单击"添加"并导航到文件夹%Program Files%\ Microsoft Visual Studio [version]\Xml\Schemas \,然后选择EnterpriseLibrary.Configuration.xsd并单击"打开".

  4. 将"使用"列中的值更改为"使用此架构".然后单击确定.

这篇文章的链接在这里,希望这会有所帮助

  • 在我的情况下,对于问题中描述的问题,使用Visual Studio 2013,计算机上没有EnterpriseLibrary.Configuration.xsd. (9认同)
  • 这至少让我朝着正确的方向发展 - VS 2013架构在VS 2015中加载.将它们设置为Auto并且错误消失了. (7认同)
  • 同样在这里@PeterLaCombJr.我将所有"使用"重置为"自动"并且错误消失了,VS 2017开始再次正确验证我的app.config并给了我IntelliSense. (6认同)

小智 32

我的问题是我从.Net 4.5转到.Net 4.0.为了解决这个问题,我将所有勾选的模式切换为自动模式.

  • 您将在app.config文件的属性窗口中找到模式.单击Schemas椭圆按钮,并从下拉列表中将每个tick替换为Automatic. (3认同)

Ish*_*eel 14

我也挣扎了一段时间.事实证明,我的问题版本源自{PROJECTNAME}.SUOVisual Studio创建的隐藏文件.

我的猜测是,VS会将XSD架构关联缓存在此文件中.更改目标框架后弹出警告,删除SUO文件并重新启动VS后,它们消失了.

  • 我和VS 2017 RC有类似的问题,这也有效,谢谢 (3认同)
  • 它有所帮助.就我而言,该文件位于{solution} /.vs/{project} /v14/.suo (3认同)
  • 这也适用于VS 2017的实际发布! (2认同)

Cha*_*ann 12

随着如问题描述,并使用Visual Studio 2013(更新4)症状,我可能会在看到XML模式 [原文]对话框,都DotNetConfig.xsdDotNetConfig40.xsd选择使用.

我正在使用.NET Framework 4.0项目.

两个XSD文件相互冲突,每个文件定义相同的元素,从而导致发出警告.

这些模式文件包含在该%programfiles(x86)%\Microsoft Visual Studio 12.0\xml\Schemas\文件夹中.

DotNetConfig.xsd1033子文件夹中,似乎是更新,更完整的版本.

无论我在XML Schema中选择了什么设置,我都无法取消选择,或删除DotNetConfig40DotNetConfig.我尝试了" 删除 ",并将使用参数从" 使用此架构 "更改为" 自动 ",然后" 不使用此架构 ".

无论选择什么,对于任一文件,当我返回到对话框时,两者都将被选中使用.我也尝试了在按" OK " 之前移动到另一行的技巧无济于事.

最后,我重命名了DotNetConfig40.xsd文件DotNetConfig40 DO NOT USE.xsd以防止它被加载.这立即解决了这个问题.

我不喜欢这样做,并担心它是否会对其他项目产生不良副作用.我会用我的结果更新这篇文章.

  • 谢谢,这有效,但是删除 .suo 似乎是最好的解决方案。这将 DotNetConfig.xsd 保留在架构列表中(删除了我从 4.5 转换到 4.7.2 后也存在的 DotNetConfig45.xsd) (2认同)

Rom*_*nov 6

一旦我在编辑器中关闭导致这些警告并重新编译的文件,这个问题就解决了.


omo*_*tan 5

我注意到我的 VS2017 有这个问题。

将 DotNetConfig.xsd 更改为使用“自动”解决了该问题。

在此处输入图片说明

  • 这似乎不能永久有效(对我来说只工作了一段时间)。删除 .suo 文件并重新打开 (3认同)