Ho bisogno di aggiornare un'impostazione nel System.net SectionGroup di un file .Net exe app.config in fase di esecuzione. Non ho accesso in scrittura al file di configurazione originale in fase di runtime (sto sviluppando un componente aggiuntivo .Net che è ospitato in un exe fornito dall'app di cui non ho il controllo) quindi speravo di salvarne una copia del file e sostituire la configurazione in exe con la versione modificata in fase di esecuzione. Ho provato quanto segue ma non funziona. Eventuali suggerimenti?Aggiornamento app.config impostazione di system.net in fase di esecuzione
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
NetSectionGroup netSectionGroup = config.GetSectionGroup("system.net") as NetSectionGroup;
netSectionGroup.Settings.HttpWebRequest.UseUnsafeHeaderParsing = true;
config.SaveAs(@"C:\ProgramData\test.config", ConfigurationSaveMode.Full);
AppDomain.CurrentDomain.SetData("APP_CONFIG_FILE", @"C:\ProgramData\test.config");
Sto sviluppando un componente aggiuntivo per un'applicazione .Net (Windows Media Center). L'addin assume la forma di un assembly .Net dll che viene caricato in un processo host separato (ehexthost.exe) gestito da Media Center exe (ehshell.exe). Non riesco a salvare il file app.config originale per il processo host a causa della sua posizione, quindi la necessità di salvare su un percorso alternativo. Inoltre voglio apportare una modifica a system.net SectionGroup e AppSettings. Grazie. – mthornal
Posso confermare che funziona anche in .NET 4.0 (Grazie a @AlexDrenea!) La chiave (scusate il gioco di parole) per me era quella di avere le seguenti impostazioni: ' appSettings> configuration>' –
AndrewJacksonZA
Confermato ... Non verrà salvato in modalità di debug. Si salverà solo se si esegue l'exe nella cartella bin. Non ho visto alcuna prova del salvataggio nel file "program_name.exe.config". – bizah