Visual studio Visual Studio.config文件元素警告

Visual studio Visual Studio.config文件元素警告,visual-studio,xsd,configuration-files,Visual Studio,Xsd,Configuration Files,当重新创建WPF应用程序时,Visual Studio 2013使用.NET Framework 4.5.1生成的默认App.config文件如下所示 为此,我可能会添加一些元素来定义一些应用程序设置 构建后,“配置”一词将加下划线,并会出现警告 未声明“配置”元素 为了消除警告,似乎有必要定义属性xmlns 是否有一个默认的属性值在某个地方是非常不受约束的,只是用来消除警告 这表明 xmlns=架构URL 虽然这确实消除了警告,但它似乎不是一个格式正确的URL,因此似乎没有意义。如果这样一个属

当重新创建WPF应用程序时,Visual Studio 2013使用.NET Framework 4.5.1生成的默认App.config文件如下所示

为此,我可能会添加一些元素来定义一些应用程序设置

构建后,“配置”一词将加下划线,并会出现警告

未声明“配置”元素

为了消除警告,似乎有必要定义属性xmlns

是否有一个默认的属性值在某个地方是非常不受约束的,只是用来消除警告

这表明

xmlns=架构URL

虽然这确实消除了警告,但它似乎不是一个格式正确的URL,因此似乎没有意义。如果这样一个属性值可以得到支持、解释或证明,那么我很乐意接受它,但是目前似乎没有任何信息可以证明这样一个属性值是正确的

这意味着属性应该指定一个URL。

似乎xmlns属性不必是机器解释的,因为它不需要用于检索。来自维基百科,对吧。。。现在这就是描述

命名空间名称是统一的资源标识符URI。通常,为给定XML词汇表的名称空间选择的URI描述了由定义词汇表的作者或组织控制的资源,例如作者的Web服务器的URL。但是,名称空间规范不要求也不建议使用名称空间URI来检索信息;XML解析器将其简单地视为字符串

有鉴于此,很容易提供一个无约束但准确的URI,例如由指定它的人控制的URL,即使该控件仅用于保证唯一性,并且没有提供任何自动功能

<?xml version="1.0" encoding="utf-8" ?> 
<configuration>
  <startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup> 
</configuration>
<?xml version="1.0" encoding="utf-8" ?> 
<configuration>
  <startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup> 
  <appSettings>
    <add key="ConfigureThisThing" value="123" />
    <add key="SwitchThatThing" value="True" />
  </appSettings>
</configuration>