AppSettings清除app.config中的Xml元素

Geo*_*ett 5 .net c# vb.net app-config appsettings

应用程序配置文件中标记<Clear \>内的XML元素的用途是什么<AppSettings>

我看到它删除了以前添加的设置(请参阅下面的代码),但为什么要这样做呢?

<appSettings>
  <add key="LogInformation" value="False"/>
  <add key="LogAPIMessages" value="False"/>
  <add key="LogErrors" value="True"/>
  <clear/> <!--This line removes previously added keys.-->
</appSettings>
Run Code Online (Sandbox Code Playgroud)

我也明白,在代码中操作应用程序设置时,您可以清除现有密钥,但为什么要使用<clear\>XML元素?

而且,出于习惯,我一直把<clear\>元素放在任何<add>元素之前.如果我不这样做,我是否需要这样做?

Has*_*him 6

这适用于在其他Web应用程序中具有Web应用程序的情况.例如,您将博客作为主应用程序中的单独应用程序实现.然后在这种情况下,"clear"用于删除对继承自定义应用程序设置的所有引用,这些设置继承自父应用程序设置.


Chr*_*n.K 5

正如您已经想到的那样,删除以前定义的条目是很重要的.此类条目不必与您自己的定义位于同一文件中.这也可以是从其他配置继承的条目,例如machine.config.

虽然这对于<appSettings>特别是有点不寻常,但它对于其他类似集合的配置元素也是如此<connectionStrings>.