2011-06-13 86 views
4

應用程序配置文件中<AppSettings>標記中的<Clear \> XML元素的用途是什麼?AppSettings清除app.config中的Xml元素

我看到它刪除了以前添加的設置(請參閱下面的代碼),但是爲什麼要這樣做?

<appSettings> 
    <add key="LogInformation" value="False"/> 
    <add key="LogAPIMessages" value="False"/> 
    <add key="LogErrors" value="True"/> 
    <clear/> <!--This line removes previously added keys.--> 
</appSettings> 

我也明白,在代碼操作應用程序設置時,你可以清除現有的密鑰,但爲什麼有<clear\> XML元素?

另外,出於習慣,真的,我一直把<clear\>元素放在任何<add>元素之前。我是否需要這樣做,我不應該這樣做嗎?

回答

6

這適用於在另一個Web應用程序中有Web應用程序的情況。例如,您可以在您的主應用程序中將博客實施爲獨立應用程序。然後在這種情況下,「清除」用於刪除所有對繼承自定義應用程序設置的引用,這些設置是從父應用程序設置繼承的。

4

正如您已經想到的那樣,這是刪除以前定義的條目。這些條目不必與您自己的定義位於同一個文件中。這也可以是從其他配置繼承的條目,例如machine.config中。

雖然這對於<appSettings>尤其有些不尋常,但對於其他類似收集的配置元素(如<connectionStrings>),它的作用相同。