Я пытаюсь выяснить, как лучше всего обновить файл app.config существующего приложения, чтобы включить новые настройки приложения, без перезаписи ранее существовавших значений настроек.
Итак, начнем с самого начала: у меня есть проект, который встроен в MSI с помощью проекта установки Visual Studio, и этот MSI используется для установки приложения. Это приложение уже установлено примерно в 1000+ местах. Теперь, в новой версии приложения, у нас есть новый параметр приложения для определения конечной точки веб-службы. Однако проект установки не будет развертывать новый app.config с новым параметром, потому что проекты установки такие тупые, и они будут устанавливать app.config только в том случае, если он еще не существует, или если в существующем уже есть сопоставление дат создания и изменения, чтобы избежать перезаписи пользовательской конфигурации.
Теперь, поскольку я не могу перезаписать app.config, я подумал, что, возможно, я разверну изменения app.config как отдельный файл XML, и при запуске приложения я загружу этот отдельный файл XML, скопирую все настройки из сравните его с тем, что находится в фактическом файле app.config, и все, что отсутствует, я сохраню в файле app.config.
Но у меня проблемы с загрузкой конфигурации из внешнего файла XML и ее копированием в app.config. Как бы я это сделал? Есть ли другой лучший способ управлять обновлением файла app.config? Какая лучшая практика?
Я больше знаком с Java, и это было бы очень просто сделать с файлами свойств, но не так просто с файлами конфигурации .NET.