1

我有 2 台名为 Web1 和 Web2 的服务器。Web2 运行几个使用 .config 文件的服务。Web1 有一个程序来监控这些服务是否正在运行。

现在我还希望能够从运行在 Web1 上的应用程序更改服务的 .config 文件。所以我需要一种方法来访问那些 .config 文件。

我已经尝试过 ConfigurationManager,但要么我做错了,要么就是不可能。

这是我所拥有的:

    private void button2_Click(object sender, EventArgs e)
    {
        try
        {
            ConfigurationFileMap fm = new ConfigurationFileMap(@"\\Web2\customer\CustomerNode.exe.config");
            Configuration conf = ConfigurationManager.OpenMappedMachineConfiguration(fm);
            conf.AppSettings.Settings["test"].Value = "blah";
            conf.Save(ConfigurationSaveMode.Modified);
        }
        catch (Exception err)
        {
            MessageBox.Show("error " + err);
        }
    }

这给了我一个 Null 异常,但我不知道为什么。您能给我的任何帮助将不胜感激!

4

1 回答 1

0

使用 GlobalConfiguration 您应该能够加载新配置,当然您应该加载或重置或重新启动您的应用程序。我已经对 Web 服务做到了这一点,在加载新配置后,我应用另一种方法来重置应用程序,然后新配置有效。我想事情应该类似于应用程序。

于 2013-08-29T14:34:30.943 回答