应用程序我想从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编写应用程序不是一种选择。
答案 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应用程序调用该服务。
但你为什么要这样做?