【问题标题】:Visual Studio .config file <configuration> element warningVisual Studio .config 文件 <configuration> 元素警告
【发布时间】:2014-06-17 00:33:55
【问题描述】:

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

<?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>

在构建时,单词configuration 将变为下划线并出现警告。

The 'configuration' element is not declared.

要消除警告,似乎有必要定义&lt;configuration&gt; 属性xmlns

在某个地方是否有一个非常不受限制的默认属性值可用,并且只是为了消除警告?

有这个particular stackoverflow answer建议

xmlns="schema URL"

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

MSDN document 表示该属性应指定一个 URL。

【问题讨论】:

    标签: visual-studio xsd configuration-files


    【解决方案1】:

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

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

    鉴于此,很容易提供不受限制但准确的 URI,例如受指定人控制的 URL,即使该控件仅用于保证唯一性并且无法提供任何自动化功能.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-04
      • 2011-02-10
      • 2011-08-31
      • 1970-01-01
      相关资源
      最近更新 更多