如何从.NET v2.0.50727打开machine.config

时间:2011-04-29 14:41:46

标签: c# c#-4.0 machine.config

应用程序我想从C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ CONFIG中的machine.config部分写入读取设置。

但是当我使用以下代码时:

Configuration myMC = WebConfigurationManager.OpenMachineConfiguration();
Console.WriteLine(myMC.FilePath.ToString());

返回的路径始终是.NET 4 machine.config:

c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Config\machine.config

编辑:我的应用程序使用MEF,因此它需要.NET 4,从.NET 2编写应用程序不是一种选择。

2 个答案:

答案 0 :(得分:2)

事实证明,有一种方法可以指定使用ConfigurationManager打开哪个machine.config:

ConfigurationFileMap myCFM = new ConfigurationFileMap(fPath);
Configuration myMC = ConfigurationManager.OpenMappedMachineConfiguration(myCFM);
Console.WriteLine(myMC.FilePath.ToString());

其中fPath是我想要的路径。我通过挖掘注册表得到了它。

答案 1 :(得分:1)

您可以将其作为xml或文本文件打开,请参阅:http://support.microsoft.com/kb/307548

您可以创建一个在.net 2.0中运行的服务,并从您的.net 4.0应用程序调用该服务。

但你为什么要这样做?