2010-01-31 65 views

回答

1

您可以使用配置API打开机器配置。

ContextInformation.IsMachineLevel是你需要的。 Configuration.EvaluationContext为您提供了ContextInformation对象,而ElementInformation对象为您提供了包括源文件路径和行号在内的所有信息。

http://msdn.microsoft.com/en-us/library/system.configuration.configurationsection_properties.aspx

http://msdn.microsoft.com/en-us/library/system.configuration.contextinformation.ismachinelevel.aspx

http://msdn.microsoft.com/en-us/library/system.configuration.elementinformation_members.aspx

您可以使用OpenMachineConfiguration方法打开特定的配置文件。 http://msdn.microsoft.com/en-us/library/ms228063.aspx

1

一般来说,Web.config设置继承并可以从Web.config覆盖设置父文件夹中的文件,应用程序根目录Web.config文件和machine.config文件。

因此,最近的Web.config文件中的设置优先于根文件Web.configmachine.config文件。虽然有一个问题。您无法在所有地方定义所有设置。一些设置只能在machine.config级别定义。有些可以在应用程序根级定义,但不能在子文件夹中定义。

+0

问题是如何确定在运行时读取其中的哪一个(Machine.config/Web.config) – TonyP 2010-01-31 11:13:20

+1

从他的回答看来,嵌套最深的web.config>嵌套较少的web.config> machine.config中。 – mbillard 2010-01-31 11:34:58

相关问题