web.config是否覆盖任何app.configs?

时间:2009-09-21 10:46:13

标签: .net web-config settings app-config

如果我有一个Web应用程序(有自己的web.config)和.dll,那么当发生冲突时,它会使用自己的app.config哪个设置文件获胜?

2 个答案:

答案 0 :(得分:6)

不,你不会有任何冲突,因为.dll不能拥有自己的.config文件。

即使您将库的.config文件放在同一个文件夹中,应用程序根本不会从中获取值。

如果您希望使用其中一些值,可以将它们合并到web.config中。

答案 1 :(得分:2)

您可以将其他配置文件中的设置合并到web.config文件中。这也允许您覆盖值,如果它们具有相同的键。

web.config

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings file="YourSettings.config">
    <add key="KeyToOverride" value="Original" />
    <add key="KeyToNotOverride" value="Standard" />
  </appSettings>
  ...

YourSettings.config

<appSettings>
  <add key="KeyToOverride" value="Overridden" />
  <add key="KeyToBeAdded" value="EntirelyNew" />
</appSettings>