如何创建machine.config文件的修改副本?

时间:2016-01-16 07:00:59

标签: c# configuration mono machine.config

我想用C#以编程方式为ADO .NET数据提供程序添加/删除/插入一行。

我的第一个想法是用一些解析器(比如Eto.Parse)解析文件,然后添加/删除必要的文本范围,然后将一个新文件写入安装映像目录(与写保护的主不同,它不受写保护machine.config中)。

然后我认为,该文件是xml,并且可以使用现有的xml机制而不是自定义解析器。加载XML,从XML构建对象模型,修改它并序列化。

然后我意识到,使用configs的对象模型已经存在于System.Configuraion命名空间中。

我决定搜索一个关于如何使用这些类修改机器配置的现有示例。我只找到了一个示例,说明如何获取它的位置new ConfigurationFileMap().MachineConfigFilename;(请参阅The best way to get a path to machine.config of a different .NET version

1 个答案:

答案 0 :(得分:1)

告诉ConfigManager您要编辑除当前应用程序配置文件以外的其他内容。

Configuration config = ConfigurationManager.OpenMachineConfiguration(); 

您可以使用config.sections [whatever]访问特定部分。

请注意,配置对象会映射您尝试调整的大多数属性,因此您需要深入了解特定部分的界面,以准确找到您尝试的内容搞乱更新。